User Guide

128-Bit Media and Scientific Programming 131
24592—Rev. 3.15—November 2009 AMD64 Technology
Indefinite Values. Floating-point and integer data type each have a unique encoding that represents
an indefinite value. The processor returns an indefinite value when a masked invalid-operation
exception (IE) occurs.
For example, if a floating-point division operation is attempted using source operands that are both
zero, and IE exceptions are masked, the floating-point indefinite value is returned as the result. Or, if a
Table 4-6. Supported Floating-Point Encodings
Classification Sign
Biased
Exponent
1
Significand
2
Positive
Non-Numbers
SNaN
0 111 ... 111
1.011 ... 111
to
1.000 ... 001
QNaN
0 111 ... 111
1.111 ... 111
to
1.100 ... 000
Positive
Floating-Point
Numbers
Positive Infinity (+)
0 111 ... 111 1.000 ... 000
Positive Normal
0
111 ... 110
to
000 ... 001
1.111 ... 111
to
1.000 ... 000
Positive Denormal
0 000 ... 000
0.111 ... 111
to
0.000 ... 001
Positive Zero
0 000 ... 000 0.000 ... 000
Negative
Floating-Point
Numbers
Negative Zero
1 000 ... 000 0.000 ... 000
Negative Denormal
1 000 ... 000
0.000 ... 001
to
0.111 ... 111
Negative Normal
1
000 ... 001
to
111 ... 110
1.000 ... 000
to
1.111 ... 111
Negative Infinity (–)
1 111 ... 111 1.000 ... 000
Negative
Non-Numbers
SNaN
1 111 ... 111
1.000 ... 001
to
1.011 ... 111
QNaN
3
1 111 ... 111
1.100 ... 000
to
1.111 ... 111
Note:
1. The actual exponent field length is 8 or 11 bits, depending on operand precision.
2. The “1.” and “0.” prefixes represent the implicit integer bit. The actual fraction field
length is 23 or 52 bits, depending on operand precision.
3. The floating-point indefinite value is a QNaN with a negative sign and a significand
whose value is 1.100 ... 000.