User Guide
126 128-Bit Media and Scientific Programming
AMD64 Technology 24592—Rev. 3.15—November 2009
software may use fixed-point operands in which the implied binary point is located in any position. In
such cases, software is responsible for managing the interpretation of such implied binary points, as
well as any redundant sign bits that may occur during multiplication.
4.4.6 Floating-Point Data Types
The 128-bit media floating-point instructions take vector or scalar operands, depending on the
instruction. The vector instructions operate in parallel on up to four, or four pairs, of single-precision
floating-point values or up to two, or two pairs, of double-precision floating-point values. The scalar
instructions operate on only one, or one pair, of single-precision or double-precision operands.
Floating-Point Data Types. The floating-point data types, shown in Figure 4-15 on page 126,
include 32-bit single precision and 64-bit double precision. Both formats are fully compatible with the
IEEE Standard for Binary Floating-Point Arithmetic (ANSI/IEEE Std 754). The 128-bit media
instructions operate internally on floating-point data types in the precision specified by each
instruction.
Figure 4-15. 128-Bit Media Floating-Point Data Types
Both of the floating-point data types consist of a sign (0 = positive, 1 = negative), a biased exponent
(base-2), and a significand, which represents the integer and fractional parts of the number. The integer
bit (also called the J bit) is implied (called a hidden integer bit). The value of an implied integer bit can
be inferred from number encodings, as described in “Floating-Point Number Encodings” on page 130.
The bias of the exponent is a constant that makes the exponent always positive and allows
reciprocation, without overflow, of the smallest normalized number representable by that data type.
Specifically, the data types are formatted as follows:
063
Double Precision
31 0
Single Precision
2223
S
Biased
Exponent
5152
Biased
Exponent
S
30
62
S = Sign Bit
S = Sign Bit
Significand
(also Fraction)
Significand
(also Fraction)