2 回答

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊
這個(gè)數(shù)字有一個(gè)“偏差”,那些位里有什么?首先0x7F
從中減去以獲得您的值。使用 value 0x01
:可以達(dá)到最低指數(shù)0x01 - 0x7F = 1 - 127 = -126
。值達(dá)到最高值0xFE
:0xFE - 0x7F = 254 - 127 = 127
。
0x00
但是,指數(shù)值和發(fā)生了什么0xFF
?這就是為什么有 254 個(gè)而不是 256 個(gè)唯一指數(shù)可用:這兩個(gè)是特殊的魔法,通常不可用。指數(shù) 0 既用于編碼 0(如果分?jǐn)?shù)的數(shù)字也是 0),也用于編碼所謂的次正規(guī)數(shù),即非常接近 0 的數(shù)字。
0xFF
用于特殊值;這就是浮點(diǎn)數(shù)存儲(chǔ)NaN
無窮大的方式。

TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊
有 2 個(gè)指數(shù)序列編碼特殊值。全 0 編碼 0 或次正規(guī)值,具體取決于尾數(shù)。全 1 編碼 Infinity 或 NaN。這意味著,正如您所說,有 254 個(gè)序列來編碼普通數(shù)字,而不是 256 個(gè)指數(shù)序列。
因此,指數(shù) 00000001 編碼 -126 次方,11111110 編碼 127 次方是有意義的。這是正常數(shù)的指數(shù)范圍。
添加回答
舉報(bào)