打印进制输出,十进制转十六进制(补码)

//打印进制输出
  	 int A = 9;
     /*按整型输出,默认右对齐*/
     printf("%d\n",A);
     /*按整型输出,补齐4位的宽度,补齐位为空格,默认右对齐*/
     printf("%4d\n",A);
     /*按整形输出,补齐4位的宽度,补齐位为0,默认右对齐*/
     printf("%04d\n",A);
  
     /*按16进制输出,默认右对齐*/   
     printf("%x\n",A);
     /*按16进制输出,补齐4位的宽度,补齐位为空格,默认右对齐*/
     printf("%4x\n",A);
     /*按照16进制输出,补齐4位的宽度,补齐位为0,默认右对齐*/
     printf("%04x\n",A);
		/*按照16进制输出带前缀0X,补齐4位的宽度,补齐位为0,默认右对齐*/
     printf("0X%04x\n",A);

     /*按8进制输出,默认右对齐*/
     printf("%o\n",A);
    /*按8进制输出,补齐4位的宽度,补齐位为空格,默认右对齐*/
     printf("%4o\n",A);
     /*按照8进制输出,补齐4位的宽度,补齐位为0,默认右对齐*/
     printf("%04o\n",A);
%进制转换dec2hex
clc;clear;close all;
%导入数据
load('env_in1.mat');
RXI=real(env_inbf);
RXQ=imag(env_inbf);
% plot(RXI);hold on ;plot(RXQ);
%变换

width = 12;%精度
depth=length(env_inbf); %数据长度
% addr = [0:depth - 1];
RXI_Ts = fix(RXI*(2^width-1)/2 + 0.4999);  %四舍五入
RXQ_Ts = fix(RXQ*(2^width-1)/2 + 0.4999);  %四舍五入
% RXI_T=RXI_Ts;
% plot(RXI_Ts);hold on ;plot(RXQ_Ts);



RXI_Ts(find(RXI_Ts<0))=RXI_Ts(find(RXI_Ts<0)) + 2^width; %求补码
RXQ_Ts(find(RXQ_Ts<0))=RXI_Ts(find(RXQ_Ts<0)) + 2^width; %求补码

%补码恢复
% RXI_TR=RXI_Ts;RXQ_TR=RXQ_Ts;
% RXI_TR(find(RXI_TR>2^(width-1)))=RXI_TR(find(RXI_TR>2^(width-1)))-2^width;
% RXQ_TR(find(RXQ_TR>2^(width-1)))=RXQ_TR(find(RXQ_TR>2^(width-1)))-2^width;
% plot(RXI_TR);hold on ; plot(RXI_T);   %对比下应该一样

file = fopen('RXI_Ts.txt','wt');%该格式对应于mif格式
fprintf(file,'DEPTH=%d;\n',depth);
for i=1:depth
    fprintf(file,'0X%04X;\n', RXI_Ts(i));
end
fclose(file);

file = fopen('RXQ_Ts.txt','wt');%该格式对应于mif格式
fprintf(file,'DEPTH=%d;\n',depth);
for i=1:depth
    fprintf(file,'0X%04X;\n', RXQ_Ts(i));
end
fclose(file);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值