GNU C Library (libc) Programming Guide - IEEE Floating Point


A.5.3.3 IEEE Floating Point

Here is an example showing how the floating type measurements come out for the most common floating point representation, specified by the IEEE Standard for Binary Floating Point Arithmetic (ANSI/IEEE Std 754-1985). Nearly all computers designed since the 1980s use this format.

The IEEE single-precision float representation uses a base of 2. There is a sign bit, a mantissa with 23 bits plus one hidden bit (so the total precision is 24 base-2 digits), and an 8-bit exponent that can represent values in the range -125 to 128, inclusive.

So, for an implementation that uses this representation for the float data type, appropriate values for the corresponding parameters are:

 FLT_RADIX 2
 FLT_MANT_DIG 24
 FLT_DIG 6
 FLT_MIN_EXP -125
 FLT_MIN_10_EXP -37
 FLT_MAX_EXP 128
 FLT_MAX_10_EXP +38
 FLT_MIN 1.17549435E-38F
 FLT_MAX 3.40282347E+38F
 FLT_EPSILON 1.19209290E-07F

Here are the values for the double data type:

 DBL_MANT_DIG 53
 DBL_DIG 15
 DBL_MIN_EXP -1021
 DBL_MIN_10_EXP -307
 DBL_MAX_EXP 1024
 DBL_MAX_10_EXP 308
 DBL_MAX 1.7976931348623157E+308
 DBL_MIN 2.2250738585072014E-308
 DBL_EPSILON 2.2204460492503131E-016

Published under the terms of the GNU General Public License Design by Interspire

AltStyle によって変換されたページ (->オリジナル) /