アットウィキロゴ

(2).IEEE実数表現方式(基数B=2)

  • 単精度の4バイト実数は、1ビットの符号ビット、8ビットの指数部、23ビットの仮数部からなる。
  • 倍精度の8バイト実数は、1ビットの符号ビット、11ビットの指数部、52ビットの仮数部からなる。
  • 符号ビットは、「0」で0または正の数、「1」で負の数を表す。
  • 指数部は、単精度の場合、8ビット部分を整数に直し(0~255)、「63」を引く。 これにより、-63~64の指数を表す。倍精度の場合、11ビット部分を整数に直し(0~2047)、「1023」を引く。 これにより、-1023~1024の指数を表す。


仮数部の求め方

  • 正規化表現(「隠しビット」)
 10進実数を2進実数に変換し、先頭に「1.」が来るように桁をずらす。
そして、仮数部は小数第1位以降の数字を採用する。これがIEEE方式の正規化表現であり、「隠しビット」という。IBM方式に比べ、仮数部の表示桁が少ないのであるが、「隠しビット」により、ある程度の桁落ちを防ぐことができる。
 たとえば、10進数0.1をIEEE単精度で表現すると、
  0.1_{(10)}=0.1\dot{9}_{(16)}=0.0001\:\dot{1}00\dot{1}_{(2)}=1.\dot{1}00\dot{1}_{(2)}\times2^{-4}
となるので、 指数部は4、仮数部23ビットは、1001 1001 1001 1001 1001 101、となる。(最終桁は「0捨1入」になる。)
ゆえに、指数部は、4+1023=1027=1000 0011 となる。
 符号は正なので0だから、IEEE実数型の表現は、
  0100 0001 1100 1100 1100 1100 1100 1101 =41CCCCCD_{(16)} となる。



最終更新:2010年11月10日 19:17