4

根据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 

谢谢!

回答

7

用于指数的位具有两个保留值,一个用于编码0和次正规数,和一个用于编码∞和NaN。由于这一结果,正常指数的范围是两个较小的比你原本期待。见IEEE-754标准的§3.4(w是在指数的比特数 - 11binary64的情况下):

编码的偏置指数E的范围应包括:

- 每个整数1和2瓦特之间- 2,以下,以编码正常数目

- 保留值0来编码±0和次正规数

- 保留值2 瓦特 - 1编码±∞和NaN。

+0

所以是指数'1024'一个为±∞和NaN保留,并且指数'-1023'一个为±0和次正规数?如果是这样,则是指数'-1023'定义为'0'? – lodhb 2013-03-16 08:44:11

+0

顺便说一句,你所指的部分是§3.4(在官方的IEEE文件中)。 – lodhb 2013-03-16 11:16:55

+0

那么,有没有你所能拥有的最小宽度的指数?指数是0位有意义吗? 1位? 2位? – Veridian 2015-04-14 20:46:41

相关问题