s1136432000
2021-07-07 10:05
采纳率: 0%
浏览 84

关于matlab十进制数转二进制数的问题

下面是我将一组十进制数转换为32位二进制数,在写到txt文件里的程序:
si_b={};
l=length(Si);
si_coefile=fopen('wave_si_Fs24g_B800mt.txt','w');
for coen=1:length(si)
if(si(coen)<0)
si_b{coen}=(dec2bin(2^32+si(coen)));
else
si_b{coen}=(dec2bin(si(coen)));
end
if(coen==length(si))
fprintf(si_coefile,'%032d',si_b{coen});
else
fprintf(si_coefile,'%032d \n',si_b{coen});
end
end
fclose all;

但生成txt文件里的数据是这样的:
0000000000000000000000000000000
000000000000000000001.111111e+31
000000000000000000001.111111e+31
000000000000000000001.001101e+20
000000000000000000001.111100e+20
000000000000000000001.111111e+31
000000000000000000001.111111e+31
000000000000000000001.111101e+20
00000000000001010101000001111040
000000000000000000001.111111e+31
......

想问一下有没有大佬指导怎么解决。。。

1条回答 默认 最新

相关推荐 更多相似问题