インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
正規化された数値とは、指数 (バイアスを含む) と仮数の最上位ビットの両方がゼロ以外の数です。このような数では、仮数の全ビットが精度を表わします。
ゼロより大きい、最も小さな単精度の正規化された浮動小数点数は、約 1.1754943-38 です。より小さな数値も可能ですが、これらの数値は、ゼロの指数と、最初のビットがゼロである仮数で表されなければならず、精度の低下を引き起こします。このような数値を非正規化された数またはデノーマル数と呼びます (サブノーマルとも呼ばれる)。
デノーマル数の計算には、ハードウェアやオペレーティング・システム・リソースが必要で、数百クロックサイクルが費やされます。また、通常の計算より遥かに長い時間がかかります。
デノーマル数を回避し、アプリケーションのパフォーマンスを高める方法はいくつかあります。
『Intel® 64 and IA-32 Architectures Software Developer's Manual, Volume 1: Basic Architecture』
現在の浮動小数点規格と推奨事項に関する情報については、IEEE (Institute of Electrical and Electronics Engineers, Inc*) Web サイトを参照