指数表記の正規化
先ほど、0.0000000000000000016と、0.00000000000000000091という数字を
比較するため、指数表記にしました。
1.6×10−18
9.1×10−19
これらの数は仮数部の1文字目が整数、2文字目以降は小数になっています。
このようにすることを「正規化」といいます。
正規化をすると1文字目が整数、2文字目以降が小数になります。基数はRですから、正規化後の仮数部は
1 < = m < R
になります。仮数部は1以上の数字で、基数より小さくなるようにします。
では指数表記の正規化を練習しましょう。
10.5(10)という数字を正規化します。
正規化では1文字目が整数、2文字目以降が小数になるようにします。この例では、10で割る、つまり10-1 を掛ければ1文字目が整数になります。
10.5 × 10-1
= 1.05
ただし、これでは元の数字が変わってしまいますから、逆に101 を掛けておきましょう。つまり、
(10.05 × 10-1 ) × 101
= 1.05 × 101
となります。
では、0.0625(10)ではどうでしょうか?
1文字目を整数にするには102 を掛ければよいですね。そして、元の数字を保持するために10-2 を掛けます
0.0625
= 6.25 × 10-2
2進数の正規化
次に2進数の場合を考えましょう。
2進数 10.010を正規化するとどうなるでしょうか?
小数点が2文字目と3文字目の間にあります。小数点を左に1つ移動すれば正規化できますね。今回の基数は「2」であることに注意してください。
1文字目のみを整数にするには 2-1 を掛けます。そして元の数字にするために 21 を掛けておきます。
(10.010 × 2-1 ) × 21
=1.0010 × 21