IEEE754规定:
- 单精度浮点数字长32位,尾数长度23,指数长度8,指数偏移量127;双精度浮点数字长64位,尾数长度52,指数长度11,指数偏移量1023
- 约定小数点左边隐含有一位,通常这位数是1,所以上述单精度尾数长度实际为24(默认省略小数点左边的1则为23),双精度尾数长度实际为53(默认省略小数点左边的1则问53)
将10进制数 100.25 转换成单精度浮点数格式
- 将十进制数转换成二进制数:(100.25)10 = (1100100.01)2
- 规格化二进制:(1100100.01)2 = 1.10010001*2^6
- 计算出阶码的移码(IEEE754约定单精度指数偏移量为127)6+127=133,即110+1111111=10000101
- 以单精度浮点数格式存储:符号位:0;阶码:10000101;位数(第二步中小数点位置补齐23位):10010001000000000000000
- 所以该数的单精度数的存浮点数格式即为:
0 10000101 10010001000000000000000
表示成16进制数:42C88000H