浮点数的机器表示
表示方法
一个规格化的32位浮点数x的真值表示为
x=(-1)S×(1.M)×2E-127
e=E-127
64位的浮点数中符号位1位,阶码域11位,尾数域52位,指数偏移值是1023。因此规格化的64位浮点数x的真值为:
x=(-1)S×(1.M)×2E-1023
e=E-1023
举例
例1:
若浮点数x的754标准存储格式为(41360000)16,求其浮点数的十进制数值。
解:将16进制数展开后,可得二制数格式为
0    100 00010    011 0110 0000 0000 0000 0000
符号S    阶码E(8位)                   尾数M(23位)
指数e=E-127=10000010-01111111=00000011=(3)10
包括隐藏位1的尾数
1.M=1.011 0110 0000 0000 0000 0000=1.011011
于是有
x=(-1)S×1.M×2e=+(1.011011)×23=+1011.011=(11.375)10
例2:
将数(20.59375)10转换成754标准的32位浮点数的二进制存储格式。
解:首先分别将整数和分数部分转换成二进制数:
20.59375=10100.10011
然后移动小数点,使其在第1,2位之间
10100.10011=1.010010011×24
e=4于是得到:
S=0, E=4+127=131, M=010010011
最后得到32位浮点数的二进制存储格式为:
0 10000011 01001001100000000000000=(41A4C000)16

作者:
Shu-How Z
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。 

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号