浮動小数点の計算における正規化の仕組みは、最初は少し難しく感じるかもしれません。特に、指数がどうして2になるのかという点については疑問が生じやすい部分です。この記事では、浮動小数点の正規化の基本概念と、その計算方法について、具体的な例を用いて解説します。
浮動小数点の正規化とは?
浮動小数点とは、非常に大きい数や非常に小さい数を表現するための方法で、数値を仮数(有効数字)と指数に分けて表現します。正規化とは、数値を特定の形式に変換することを意味します。例えば、10進法の場合、通常は「1以上10未満」の数になるように小数点を移動させます。
2進法の浮動小数点でも同じように、数値を「1以上2未満」の形式に正規化します。これを「正規化された形」と呼びます。例えば、11.101 × 2^0という数を正規化すると、1.1101 × 2^2の形になります。
なぜ指数が2になるのか?
質問にある例「111.01 × 2^0」を正規化すると「1.1101 × 2^2」になります。この理由は、正規化の過程で数値を2進法の「1以上2未満」の範囲に収めるためです。具体的には、最初の数値111.01を1.1101にするために小数点を2つ動かす必要があります。この操作を行うと、指数が2になります。
つまり、指数が2になるのは、小数点を移動させる回数、すなわち「桁数」を基に計算されます。この場合、小数点を2桁右に動かすことで、2の累乗(2^2)で表現されます。
10進法との違い
10進法では、「123 × 10^0」を「1.23 × 10^2」に変換することが理解しやすいです。これは、数字を小数点で適切な位置に移動させることで、10の累乗を使って表現するためです。同様に、浮動小数点では2進法においても同じような操作を行い、仮数(有効数字)を「1以上2未満」の形式に持っていきます。
2進法の場合、数値の各桁が2の累乗で表現されるため、正規化における指数も2のべき乗(例えば2^2)として表現されることになります。
まとめ
浮動小数点の正規化では、数値を1以上2未満の形式に変換するために小数点を移動させ、その移動回数に基づいて指数が決まります。質問の例では、小数点を2桁移動させたため、指数は2となります。これが、浮動小数点の計算における正規化の基本的な仕組みであり、10進法と2進法の違いに基づいています。


コメント