浮動小数点表示の仮数部が23ビットであるコンピュータで計算した場合、情報落ちが発生する計算式はどれか。
ここで、( )2内の数は2進法で表示されている。
ア |
(10.101)2×2-16(1.001)2×2-15 |
イ |
(10.101)2×216(1.001)2×216 |
ウ |
(1.01)2×218+(1.01)2×2-5 |
エ |
(1.001)2×220+(1.1111)2×221 |
答え ウ
【解説】
仮数部のビット数が23ビットなので、情報落ちが発生するのは、加減算する数値の絶対値の差が223以上あるときです。
この条件を満たすのはウの
になります。
2つの数を2進数で表すと
(1.01)2×218=101 0000 0000 0000 0000 |
(1.01)2×2-5=0.0000 101 |
になり、これを加算すると
101 0000 0000 0000 0000 .0000 101
になります。仮数部は23ビットなので、この数の上位23ビットを取り出すと
101 0000 0000 0000 0000.0000=(1.01)2×218 |
になり、(1 .01) 2×2 -5の情報は無視されてしまい、情報落ちが発生します。
【キーワード】
・情報落ち
【キーワードの解説】
- 情報落ち
コンピュータで扱える数値の有効けた数に限りがあることで発生する誤差の一つで、絶対値の大きい数値と、絶対値の小さい数値を加減算したときに、絶対値の小さい数値が無視されてしまうことです。
100,000,000(1億)と、これに1を加算した100,000,001が何百万(有効けた数3けた)かを考えると、共に100百万になり加算した1が無視されてしまいます。
もっと、「情報落ち」について調べてみよう。
戻る
一覧へ
次へ
|