浮動小数点数は,有限個のビットで実数を近似します。浮動小数点数を表現しているビットは,BitViewer ツールで見ることができます。ビットは次に示す式のように計算されます。表現は 2 進数なので,基底は 2 です。ビット bn は 2 進数 (0 または 1) を表します。精度 P は,その数の非指数部 (有効数字) のビット数で,E は指数部です。2 進の浮動小数点数は,これらのパラメタを使って,次のように実数を近似します。
( - 1)s b 0 . b 1 b 2 ... b P-1 x 2 E
ここで s は 0 または 1 (+ または -) で,E min <= E <= E max です。
次表に,これらのパラメタの単精度,倍精度,および拡張倍精度書式での標準的な値と,符号,指数部,および数値全体のビット幅を示します。
IEEE 浮動小数点書式のパラメタ
パラメタ | 単精度 | 倍精度 | 拡張倍精度 |
符号のビット幅 | 1 | 1 | 1 |
P | 24 | 53 | 64 |
E max | +127 | +1023 | +16383 |
E min | -126 | -1022 | -16382 |
指数部のバイアス | +127 | +1023 | +16383 |
指数部のビット幅 | 8 | 11 | 15 |
書式のビット幅 | 32 | 64 | 80 |
標準では,単精度および倍精度書式は規格化されていることが必要なので,b 0 はつねに 1 です。したがって,b 0 は暗黙に 1 になるので,精度 24 と 53 を表現するために必要な実際のビット数は,それぞれ 23 と 52 です。
拡張倍精度書式は規格化されている必要がないので,精度には 64 ビットすべてを使用します。バイアスは,指数部が正の整数になるように,すべての指数部に加えられる値です。これにより指数値間の比較が簡単になります。格納される指数部は実際には次のようになります。
e = E + bias
関連情報
浮動小数点表現についての詳細は,「ネイティブ IEEE 浮動小数点表現」を参照してください。
BitViewer ツールの使用方法については,「BitViewer による浮動小数点表現の表示」を参照してください。
ネイティブ IEEE リトル・エンディアン・データ以外の浮動小数点データの読み書きについては,「書式なし数値データの変換」を参照してください。