IBM C and C++ Compilers conforms to IEEE format, in which a floating point number is represented in terms of sign (S), exponent (E), and fraction (F):
(-1)S x 2E x 1.F
| Type | float | ||||||||||||
| Alignment | 4-byte-aligned | ||||||||||||
| Bit Mapping | In the internal
representation, there is 1 bit for the sign (S), 8 bits
for the exponent (E), and 23 bits for the fraction (F).
The bits are mapped with the fraction in bit 0 to bit 22,
the exponent in bit 23 to bit 30, and the sign in bit 31:
Read the lines vertically from top to bottom. For example, the third column of numbers shows that bit 29 is part of the exponent. |
||||||||||||
| Storage Mapping | In the following mapping,
high memory is to the right.
|
![]()
Mapping of Fundamental Data Types
Mapping of Compound
Data Types
Format of Eight-Byte
Floating Point Data
Format of Ten-Byte
Floating Point Data in Sixteen Byte Fields