17.3 浮動小数点数に関する制限

このトピックでは、浮動小数点数の特性について説明します。

以下の表は、浮動小数点数の制限を示します。これらの定数は、float.h インクルードファイルで定義されます。

表 17-3 浮動小数点数に関する制限

定数 意味
FLT_MAX float の最大値。 3.40282347e+38F
FLT_MIN float の正規化された正の最小浮動小数点数値。 1.175494351e–38F
DBL_MAX double の最大値。 1.79769313486231571e+308
DBL_MIN double の正規化された正の最小浮動小数点数値。 2.22507385850720138e–308
LDBL_MAX long double の最大値。 1.79769313486231571e+308
LDBL_MIN long double の正規化された正の最小浮動小数点数値。 2.22507385850720138e–308
FLT_MAX_EXP float 型の基数 2 の指数の最大値。 128
FLT_MIN_EXP float 型の基数 2 の指数の最小値。 –125
DBL_MAX_EXP double 型の基数 2 の指数の最大値。 1 024
DBL_MIN_EXP double 型の基数 2 の指数の最小値。 –1 021
LDBL_MAX_EXP long double 型の基数 2 の指数の最大値。 1 024
LDBL_MIN_EXP long double 型の基数 2 の指数の最小値。 –1 021
FLT_MAX_10_EXP float 型の基数 10 の指数の最大値。 38
FLT_MIN_10_EXP float 型の基数 10 の指数の最小値。 –37
DBL_MAX_10_EXP double 型の基数 10 の指数の最大値。 308
DBL_MIN_10_EXP double 型の基数 10 の指数の最小値。 –307
LDBL_MAX_10_EXP long double 型の基数 10 の指数の最大値。 308
LDBL_MIN_10_EXP long double 型の基数 10 の指数の最小値。 –307
以下の表では、浮動小数点数の他の特性について説明します。これらの定数も、float.h インクルードファイルで定義されます。

表 17-4 浮動小数点数に関するその他の特性

定数 意味
FLT_RADIX ARM 浮動小数点数表現のベース(基数)。 2
FLT_ROUNDS 浮動小数点数の丸めモード。 (直近の値)1
FLT_DIG float 型の精度の 10 進数。 6
DBL_DIG double 型の精度の 10 進数。 15
LDBL_DIG long double 型の精度の 10 進数。 15
FLT_MANT_DIG float 型の精度の 2 進数。 24
DBL_MANT_DIG double 型の精度の 2 進数。 53
LDBL_MANT_DIG long double 型の精度の 2 進数。 53
FLT_EPSILON float 型において 1.0 + x != 1.0 が成り立つ正の値 x の最小値。 1.19209290e–7F
DBL_EPSILON double 型において 1.0 + x != 1.0 が成り立つ正の値 x の最小値。 2.2204460492503131e–16
LDBL_EPSILON long double 型において 1.0 + x != 1.0 が成り立つ正の値 x の最小値。 2.2204460492503131e–16L

  • 浮動小数点数をより精度の低い浮動小数点型の値に変換すると、その値は表現可能な近似値に丸められます。
  • 浮動小数点演算は IEEE 754 に準拠しています。
非機密扱いPDF file icon PDF 版ARM DUI0472LJ
Copyright © 2010-2015 ARM.All rights reserved.