欢迎来到天天文库
浏览记录
ID:56397547
大小:33.50 KB
页数:2页
时间:2020-06-23
《计算32位浮点数表示范围.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、32位浮点数由S(1位)E(8位)M(23位表示)IEEE-754标准规定:E的范围0~255,通过移码-127范围为为-127~128,除去了全0和全1,即-126~127;M用23位原码表示,表示的二进制数为1+M,除去全0,可表示的二进制范围为1.0000000000000000001至1.1111111111111111111E为全0,M为全零,表示±0;E为全1,M为全零,表示±∞;因此:32位浮点数表示的正的最小值为0.0000000000000000001╳2-126=2^-23╳2-126≈1.401298464324817e-45(Matlab计算
2、值)32位浮点数表示的正的最大值为1.1111111111111111111╳2-126=(2-2-23)╳2127≈3.40282346638529e+38(Matlab计算值)负数部分与正数部分对称,因此表示的十进制范围为[-3.40282346638529e+38,-1.401298464324817e-45]U[1.401298464324817e-45,3.40282346638529e+38]因为10^6<2^23<10^7,所以32位浮点型数据的表达的有效数字最少为6位,23位浮点数表示的数字最大误差为1/2^23,约等于1.1920928955078
3、1e-07,误差最大影响到小数点后第七位,因此整数位1和小数位前6位都是有效数字。二进制和十进制整数可以无差转换;二进制小数转十进制小数可以无差转换,十进制转二进制会产生误差,如2.2,会是一个无限循环的二进制小数。
此文档下载收益归作者所有