User Guide
262 x87 Floating-Point Programming
AMD64 Technology 24592—Rev. 3.15—November 2009
Figure 6-10. Mnemonic Syntax for Typical Instruction
This example shows the FADD mnemonic followed by two operands, both of which are 80-bit stack-
register operands. Most instructions take source operands from an x87 stack register and/or memory
and write their results to a stack register or memory. Only two of the instructions (FSTSW and
FNSTSW) can access a general-purpose registers (GPR), and none access the 128-bit media (XMM)
registers. Although the MMX registers map to the x87 registers, the contents of the MMX registers
cannot be accessed meaningfully using x87 instructions.
Instructions can have one or more prefixes that modify default operand properties. These prefixes are
summarized in “Instruction Prefixes” on page 71.
Mnemonics. The following characters are used as prefixes in the mnemonics of integer instructions:
• F—x87 Floating-point
In addition to the above prefix characters, the following characters are used elsewhere in the
mnemonics of x87 instructions:
• B—Below, or BCD
• BE—Below or Equal
• CMOV—Conditional Move
• c—Variable condition
• E—Equal
• I—Integer
• LD—Load
• N—No Wait
• NB—Not Below
• NBE—Not Below or Equal
• NE—Not Equal
• NU—Not Unordered
513-146.eps
Mnemonic
First Source Operand
and Destination Operand
Second Source Operand
FADD st(0), st(i)