[CS] IEEE 754 表示式

IEEE 754 單精度浮點數格式學習筆記,以(-13.625)為例逐步說明轉換成 32 位元 S+Exponent+Fraction 二進位表示的計算過程。

2 的補數複習一下  http://entry.hit.edu.tw/~bd92043/1.htm

另一篇 IEEE 754   http://tw.myblog.yahoo.com/nicholas-kang/article?mid=39&l=f&fid=5

PTT 轉錄 https://www.ptt.cc/bbs/CYCU-IM/M.1233932341.A.13C.html

以下是我的筆記:

 IEEE 754 結構 (以下皆只討論 Single Precision)
 ==== S(1) + Exponent(8) + Fraction(23)   共 32 bits ====
 S 判斷正負
 作業例子:  (-13.625)ten 使用 IEEE 754 表示
 p.s. IEEE 754 表示式是在第一個 bit 來判斷正負
 1. 先轉二進位
 (-13)ten = (-1101)two
 (0.625)ten = (5/8)ten = (101/1000)two
 => (-13.625)ten = (-1101.101)two
 2. 正規化表示 (就像科學記號表示法一樣)
 => (-1101.101)two = -1.101101 x 2^3
 3. 因此可以得到
 => 1 ________ 10110100000000000000000
 4. E = 指數加上 bias 即可   不用二的補數  (IEEE 754 的偏差設為 127)
 => 剛剛算出來的指數是 3,所以
 => 3 + 127 = 130
 => 130 轉二進位為:1000 0010
 因此 (-13.625)ten = 1 1000 0010 10110100000000000000000  (空白只是觀看容易)
 驗證一下ㄎㄎ
 http://www.h-schmidt.net/FloatApplet/IEEE754.html

comments powered by Disqus
Powered by Hugo. Theme Stack. All Rights Reserved.