A floating-point representation in the IEEE 754-2008 standard (referred to as IEEE 754 henceforth) is an unencoded member of a floating-point format which represents either a finite number, a signed infinity, or some kind of NaN. An element of the subset of floating-point representations consisting of finite numbers and signed infinities is called a floating-point number.
A floating-point representation of a finite real number has three components: A sign, an exponent,
and a significand. The numerical value of a representation
of a finite floating-point number is the
signed product of its significand
and its radix raised to the power of
its exponent; in particular, note that
the floating-point representation of a given value may not be unique,
particularly when the radix is 10 (IEEE Computer Society
2008).
IEEE 754 interchange formats encode floating-point data as -bit
binary strings, including formats
whose arithmetic radix is 10. The bit fields encode the
sign, exponent
and significand; for decimal
formats some fields combine exponent and
significand information. For example, decimal32 uses
32 storage bits for a significand
of 7 decimal digits. The arithmetic radix
therefore differs from the binary storage encoding. Due
to the fact that values may have more than one representation, it may happen that
encodings fail to be in one-to-one correspondence
with the values they represent. Even so, IEEE 754
requires that all encoding procedures adhere to a strict set of guidelines in terms
of how each representation is encoded, thereby guaranteeing that both the representation
and the value
of each floating-point datum be inferable from the fields
of the encoding itself. What's more, the partitions of any encoding are formatted
so that "auxiliary information" such as the payload of a NaN
can be deduced by decoding such an encoded representation (IEEE Computer Society
2008, pp. 9-12).