首页
社区
课程
招聘
[分享]IEEE754浮点数的学习笔记
发表于: 2009-3-19 23:36 13470

[分享]IEEE754浮点数的学习笔记

2009-3-19 23:36
13470

IEEE754浮点数的学习笔记

格式       长度  符号位 指数位  尾数位  有效位数  指数偏移   尾数说明
单精度     32     1       8       23      24        127       有一位隐含位
双精度     64     1      11       52      53       1023       有一位隐含位
扩展双精度 80     1      15       64      64      16383       没有隐含位

注意:扩展双精度格式没有隐含位,因此它的有效位数与尾数位数一致,而单精度和双精度格式均有一位隐含位,因此它们的有效位数比尾数位数多1。

单精度格式浮点数表示范围

             指数     尾数       数值(二进制)           数值(十进制)
最大数       0xfe     0x7fffff   1.(23个1)  * 2^(+127)  3,4028236692093846346337460743177e+38
最小数       0x1      0x0        1.(23个0)  * 2^(-126)  1,1754943508222875079687365372222e-38
最小弱规范数 0x0      0x1        0.(22个0)1 * 2^(-126)  1,4012984643248170709237295832899e-45

注意:弱规范数的隐含位是0。

双精度格式浮点数表示范围

             指数     尾数               数值(二进制)             数值(十进制)
最大数       0x7fe    0xfffffffffffff    1.(52个1)  * 2^(+1023)   1,797693134862315907729305190789e+308
最小数       0x1      0x0                1.(52个0)  * 2^(-1022)   2,2250738585072013830902327173324e-308
最小弱规范数 0x0      0x1                0.(51个0)1 * 2^(-1022)   4,9406564584124654417656879286822e-324

注意:弱规范数的隐含位是0。

扩展双精度格式浮点数表示范围

             指数     尾数                  数值(二进制)             数值(十进制)
最大数       0x7ffe   0xffffffffffffffff    1.(63个1)  * 2^(+16383)  1,189731495357231765085759326628e+4932
最小数       0x1      0x8000000000000000    1.(63个0)  * 2^(-16382)  3,3621031431120935062626778173218e-4932
最小弱规范数 0x0      0x1                   0.(62个0)1 * 2^(-16382)  3,6451995318824746025284059336194e-4951

注意:扩展双精度格式数没有隐含位,第63位(尾数最高位)表示整数位。

附:测试代码(vc 6.0下通过)


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 7
支持
分享
最新回复 (3)
雪    币: 2575
活跃值: (502)
能力值: ( LV2,RANK:85 )
在线值:
发帖
回帖
粉丝
2
正在找浮点资料,谢谢
2009-3-20 09:47
0
雪    币: 132
活跃值: (30)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
不知道这个问题要什么时候会用上。。。

等用上滴时候再来仔细看看。。。mark
2010-9-3 23:53
0
雪    币: 273
活跃值: (64)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
4
我想知道你是怎么知道有 __int64这种内置扩展类型的, 是编译器的说明文档 还是 其它的? 我是菜鸟 求指教!
2013-7-16 00:44
0
游客
登录 | 注册 方可回帖
返回
//