📄 ylj_hex2num.m
字号:
function result=ylj_hex2num(x)
%将16进制机器数转换为 IEEE Standard754-1985 的32位浮点数
%x为一16进制的数如'3483126f'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
x1=hex2dec(x);%
x2=dec2bin(x1,32);%把x由16进制转换为2进制表示,x2为一个2进制字符串
%%%%%%%%%%%%%%%%%%%%%%%%%%
fuhao=0;
if x2(1)=='0'
fuhao=1;
else if x2(1)=='1'
fuhao=-1;
end
end
%%%%%%%%%%%%%%%%%%%%%以上符号位
zhishu1=x2(2:9);
zhishu=bin2dec(zhishu1);
%%%%%%%%%%%%%%%%%%%%%%%%以上指数位
a=x2(10:32);
for i=1:23
z(i)=str2num(a(i)).*2.^(-i);
end
xiaoshu=1+sum(z);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%以上小数位
%fuhao
%zhishu
%xiaoshu
result=fuhao.*2.^(zhishu-127).*xiaoshu;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -