该标准由美国电气电子工程师学会(IEEE)计算机学会旗下的微处理器标准委员会(Microprocessor Standards Committee, MSC)发布。IEEE 754 标准规定了 ... ... <看更多>
ieee754計算機 在 Re: [理工] 計算機結構IEEE754格式- Grad-ProbAsk | PTT Web 的推薦與評價
Re:[理工]計算機結構IEEE754格式@grad-probask,共有3則留言,1人參與討論,1推0噓2→, ※ 引述《dearwen61 (Water Blue)》之銘言:: 請計算出 ... ... <看更多>
ieee754計算機 在 基础系列- 奇怪的0.1 + 0.2 与IEEE 754 #20 - GitHub 的推薦與評價
IEEE 754 - 维基百科在计算机的世界中,浮点数的表示范围优先。浮点数只是可以近似的标识一个数而已。与许多其他编程语言不同,JavaScript 并未定义 ... ... <看更多>
ieee754計算機 在 Re: [理工] 計算機結構IEEE754格式- 看板Grad-ProbAsk 的推薦與評價
※ 引述《dearwen61 (Water Blue)》之銘言:
: 請計算出用IEEE754 單精準浮點數能表示的最大與最小的正數。以下為IEEE754
: 二進位浮點數表示法。
: Value = (-1)^S × (1+Significant)×2^(Exponent-127)
: 其中S為1bit,Significant為23bit,Exponent為8bit
: 小弟想請教一下,關於Exponent的部分
: 最大正數時,Exponent取255然後再扣掉127=128這樣對嗎?
: 而最小正數時,Exponent取0然後再扣掉127=-127這樣對嗎?
: 這部分小弟有一些疑惑,故想確認一下想法正確與否
: 有勞高手為小弟解惑了,感激不盡。
錯喔 至於怎麼看 要看有沒有分正規化數和非正規化數
你列的那個公式是屬於正規化數的
所以最大正數是1.11...1(小數點後有23個1) ×2^127才對
同樣最小正數 此時看你有沒有分正規化數或非正規化數了
只看正規化數的話 最小正數是1.0 ×2^(-126) (exponent是取1-127)
但一般來說非正規化數會考慮到的 因為IEEE754為了要保持精準度
所以允許正規化數underover可以又有下限
非正規化數公式是(-1)^S × (0.Significant)×2^-126
所以非正規化數最大正數是0.11...1(小數後有23個1) ×2^-126
則最小正數是
0.0....01(小數點後第23位是1其他都0) ×2^-126也能化簡為1 ×2^-149
但要特別注意的是考試時要考IEEE754最大正數和最小正數是多少時候
必須要把正規化數和非正規化數都考慮進去(如果沒規定的話)
所以最大正數就是1.11...1 ×2^127 沒意外最小正數應該是2^-149
至於為什麼exponent不能取0或255的好像是IEEE754規定的@@
因為這兩個值是特別值它又採用biased達到快速比較指數的關係
所以取0有兩種情況
如果fraction=0的話就是0 但≠0屬於非正規化範圍
取255也有2種情況
如果fraction=0的話會發生overflow趨向無限 而≠0的話為NAN
然而正規化數範圍是exponent取1~254 fraction任意數都可
正規化數定義是小數點左邊只能有非0的數值
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 36.231.34.217
... <看更多>