双倍的最大和最小指数
根据IEEE Std 754-2008标准,二进制64位双精度浮点格式的指数字段宽度为11位,由1023的指数偏差进行补偿。该标准还指定最大指数为1023,并且最小值是-1022。 为什么最大指数不是:
2^10 + 2^9 + 2^8 + 2^7 + 2^6 + 2^5 + 2^4 + 2^3 + 2^2 + 2^1 + 2^0 - 1023 = 1024
最小指数不是:
0 - 1023 = -1023
谢谢!
指数的位有两个保留值,一个用于编码0
和低于正常数字,另一个用于编码∞和NaN。 因此,正态指数的范围比您预期的要小两个。 参见IEEE-754标准的§3.4( w
是指数中的位数 - 在binary64
中是11
):
编码的偏向指数E的范围应包括:
- 1和2w - 2之间的每个整数,以编码正常数字
- 保留值0编码±0和低于正常数字
- 保留值2w - 1编码±∞和NaNs。
链接地址: http://www.djcxy.com/p/85577.html