下面简要介绍在当前主流微机中广泛采用的IEEE754标准浮点格式。
按IEEE754标准,常用的浮点数的格式如图2-3所示。
|
|
|
|
|
|
|
IEEE754有3种浮点表示格式,分别称为: 短浮点数(或称短实数)、长浮点数(或称长实数)、临时浮点数(或称临时实数)。它们的具体格式如表2-4所示。
短浮点数又称为单精度浮点数,长浮点数又称为双精度浮点数,它们都采用隐含尾数最高数位(20)的方法,这样,无形中又增加了一位尾数,因此,相应地尾数真值实际上等于1+(23位尾数数值或52位尾数数值)。临时浮点数又称为扩展精度浮点数,它没有隐含位,尾数真值就等于64位尾数数值。
下面以32位短浮点数为例,最高位是数符,其后是8位阶码,以2为底,采用移码表示,但偏置量为127,例如阶码真值为1,则阶码的代码值为128,这点与前述原理性偏置量(128)有点差异。其余23位尾数为纯小数,因此,尾数位数实际上是:1位隐含位+23位尾数=24位。
注意:隐含的“1”是一位整数(即权位为20)。在浮点格式中表示出来的23位尾数是纯小数,用原码表示。例如: (15)10 =(1111)2 ,将它规格化后结果为1.111×2 3 ,其中整数部分的“1”将不存储在23位尾数内。
阶码是以移码形式存储的。短浮点数的偏置值为十进制127或十六进制7FH;长浮点数的偏置值为十进制1023或十六进制3FFH;临时浮点数的偏置值为十进制16383或十六进制3FFFH。存储浮点数阶码部分之前,偏置值先要加到阶码真值上。若阶码真值为3,在短浮点数中,移码表示的阶码为:十进制127+3=130或十六进制82H;长浮点数中,移码表示的阶码为:十进制1023+3=1026或十六进制402H;临时浮点数中,移码表示的阶码为:十进制16383+3=16386或十六进制4002H。
例2-29 将(82.25)10 转换成短浮点数格式。
1)先将(82.25)10 转换成二进制数
(82.25)10 =(1010010.01)2
2)规格化二进制数(1010010.01)2
1010010.01=1.01001001×2 6
3)计算移码表示的阶码=偏置值+阶码真值:
(127+6)10=(133)10 =(10000101)2
4)以短浮点数格式存储该数
因此:符号位=0 表示该数为正数
阶码=10000101 由3)可得
尾数=01001001000000000000000 由2)可得;尾数为23位,不足在后面添15位0
所以,短浮点数代码为:
0;10000101;01001001000000000000000
表示为十六进制代码为:42A48000H
例2-30 将(﹣18.125)10 转换成短浮点数格式。
1)先将(﹣18.125)10 转换成二进制数
(﹣18.125)10 =(﹣10010.001)2
2)规格化二进制数(﹣10010.001)2
﹣10010.001=﹣1.0010001×2 4
3)计算移码表示的阶码=偏置值+阶码真值:
(127+4)10=(131)10 =(10000011)2
4)以短浮点数格式存储该数
因此:符号位=1 表示该数为负数
阶码=10000011 由3)可得
尾数=00100010000000000000000 由2)可得;尾数为23位,不足在后面添16位0
所以,短浮点数代码为:
1;10000011;00100010000000000000000
表示为十六进制代码为:C1910000H
资料提供:售后 景楠
威尼斯官方网站登录 | 关于威尼斯官方网站登录 | 企业荣誉 | 产品展示 | 典型案例 | 新闻中心 | 联系威尼斯官方网站登录
地址:石家庄市新石北路368号金石工业园2号楼 电话:0311-83056195 83056196 E-Mail:webmaster@createc.cn