网站大量收购独家精品文档,联系QQ:2885784924

ieee754标准浮点格式.docx

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.1.3 数的定点表示与浮点表示 2、浮点表示法 (4) IEEE754标准浮点格式 前面讨论的是原理性浮点格式,但实际计算机的浮点格式与此有一些差异。下面简要 介绍在当前主流微机中广泛采用的 IEEE754标准浮点格式。 按IEEE754标准,常用的浮点数的格式如图 2-3所示。 阶码E 尾数M 图2-3 IEEE754标准浮点格式 IEEE754有3种浮点表示格式,分别称为: 短浮点数(或称短实数)、长浮点数(或称 长实数)、临时浮点数(或称临时实数)。它们的具体格式如表 2-4所示。 表2-4 IEEE754的3种浮点表示格式 类型 数符 (位) 阶码 (位) 尾数数值 (位) 总位数 (位) 偏置值 十六进制 十进制 短浮点数 1 8 23 32 7FH 127 长浮点数 1 11 52 64 3FFH 1023 临时浮点数 1 15 64 80 3FFFH 16383 短浮点数又称为单精度浮点数,长浮点数又称为双精度浮点数,它们都采用隐含尾数 最高数位(20)的方法,这样,无形中又增加了一位尾数,因此,相应地尾数真值实际上等 于1+( 23位尾数数值或52位尾数数值)。临时浮点数又称为扩展精度浮点数,它没有隐含 位,尾数真值就等于 64位尾数数值。 下面以32位短浮点数为例,最高位是数符,其后是 8位阶码,以2为底,采用移码表 示,但偏置量为127,例如阶码真值为 1,则阶码的代码值为 128,这点与前述原理性偏置 量(128)有点差异。其余 23位尾数为纯小数,因此,尾数位数实际上是: 1位隐含位+23 位尾数=24位。 注意:隐含的“ 1”是一位整数(即权位为 2 0 )。在浮点格式中表示出来的 23位尾数 是纯小数,用原码表示。例如: (15) 10 =(1111) 2,将它规格化后结果为 1.111 X 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) 1。转换成短浮点数格式。 1) 先将(82.25) 10转换成二进制数 (82.25) 10=(1010010.01) 2 2) 规格化二进制数(1010010.01) 2 1010010.01=1X 2 6 3) 计算移码表示的阶码 =偏置值+阶码真值: (127+6) 10=(133) 10 = 2 4)以短浮点数格式存储该数 表示该数为正数由 3 表示该数为正数 由 3)可得 由 2)可得;尾数为 23 位,不 足在后面添 15 位 0 阶码 尾数 =01001001000000000000000 所以,短浮点数代码为: 0 ;01001001000000000000000 表示为十六进制代码为: 42A48000H 例2-30将(-18.125) io转换成短浮点数格式。 1 )先将(-18.125) io转换成二进制数 ( -18.125) 10 =( - 10010.001) 2 2)规格化二进制数(-10010.001) 2 4 -10010.00仁一1.0010001 X 2 3)计算移码表示的阶码 =偏置值 +阶码真值: (127+4) 10=(131) 10 = 2 4)以短浮点数格式存储该数 因此:符号位 =1 因此:符号位 =1 阶码尾数 =00100010000000000000000 由 3)可得 由 2)可得;尾数为 23 位,不 足在后面添 16 位 0 所以,短浮点数代码为: 1 ;;00100010000000000000000 表示为十六进制代码为: C1910000H 如何由十进制数转换成长浮点数格式、临时浮点数格式;以及又如何由短浮点数格式、 长浮点数格式、临时浮点数格式转换成十进制数请读者自己思考,这里不再赘述。

文档评论(0)

136****3783 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档