り繁雑である.
例題3 2進数 0.1b を 10 進数に変換せよ. 次に, 10 進数0.1d を2進数
に変換せよ.
解答
0.1b10進数への変換の場合
0.1b=1×2-1=0.5d
0.1d2進数への変換の場合
0.6 x 2 = 1.2
0.1 x 2 = 0.2
0.8 × 2 = 1.6
0.2 x 2 = 0.4
0.4 × 2 = 0.8
10.2 x 2 = 0.4
(以下, 無限の繰り返し)
この計算から, 0.1d = 0.00011b (循環小数表現)となることがわかり、
0.1d を 2 進数有限ビット数で表現できない。このため,有限ビット数
で打ち切ると,打切り誤差が生じる。たとえば, 5ビットで打ち切ると
0.1d≒0.00011b=24+ 2-5
!
真値? =0.09375d真位→
相対誤差 | 0.09375-0.1|/ | 0.1 | × 100% = 6.25%を伴う近似値が
得られる.
↑
(測定値的な)真値によって変わる
1