非正規数とアンダーフロー

10 進浮動小数点データ・タイプには、通常の 10 進浮動小数点値の範囲に収まらない、一式のゼロ以外の数があります。これらの数を非正規数と呼びます。

非ゼロの数値の調整済み指数が Emin4 より小さい場合、その数値は非正規数と呼ばれます。 この非正規数は、すべての演算のオペランドとして指定することができ、また、演算の結果にもなります。すべての丸め発生前の結果が非正規数であれば、非正規条件が戻されます。

非正規化の結果の場合、指数の最小値は Emin - (precision-1) (Etiny と呼ばれる) になります。ここで、precision は計算精度を表します。必要に応じて、指数が Etiny より小さくならないように結果は丸められます。 丸めの過程で結果が不正確になると、アンダーフロー条件が戻されます。非正規化の結果は必ずしもアンダーフロー条件を戻しませんが、必ず非正規条件を戻します。

計算の過程で数値がアンダーフローしてゼロになる場合、その指数は Etiny に設定されます。 指数の最大値は影響を受けません。

非正規数の指数の最大値は、結果が非正規数にならない演算中に発生する指数の最小値と同じです。これは、小数桁数の係数の長さが精度と等しい場合に発生します。