<<<    Index    >>>
B-37
INSTRUCTION FORMATS AND ENCODINGS
Table B-23.  Floating-Point Instruction Formats and Encodings
Instruction and Format
Encoding
F2XM1 – Compute 2
ST(0)
 – 1
11011 001 : 1111 0000
FABS – Absolute Value
11011 001 : 1110 0001
FADD – Add
ST(0) 
<
 ST(0) + 32-bit memory
11011 000 : mod 000 r/m
ST(0) 
<
 ST(0) + 64-bit memory
11011 100 : mod 000 r/m
ST(d) 
<
 ST(0) + ST(i)
11011 d00 : 11 000 ST(i)
FADDP – Add and Pop
ST(0) 
<
 ST(0) + ST(i)
11011 110 : 11 000 ST(i)
FBLD – Load Binary Coded Decimal
11011 111 : mod 100 r/m 
FBSTP – Store Binary Coded Decimal and Pop11011 111 : mod 110 r/m
FCHS – Change Sign
11011 001 : 1110 0000
FCLEX – Clear Exceptions
11011 011 : 1110 0010
FCMOVcc – Conditional Move on EFLAG 
Register Condition Codes
move if below (B)
11011 010 : 11 000 ST(i)
move if equal (E)
11011 010 : 11 001 ST(i)
move if below or equal (BE)
11011 010 : 11 010 ST(i)
move if unordered (U)
11011 010 : 11 011 ST(i)
move if not below (NB)
11011 011 : 11 000 ST(i)
move if not equal (NE)
11011 011 : 11 001 ST(i)
move if not below or equal (NBE)
11011 011 : 11 010 ST(i)
move if not unordered (NU)
11011 011 : 11 011 ST(i)
FCOM – Compare Real
32-bit memory
11011 000 : mod 010 r/m
64-bit memory
11011 100 : mod 010 r/m
ST(i)
11011 000 : 11 010 ST(i)
FCOMP – Compare Real and Pop
32-bit memory
11011 000 : mod 011 r/m
64-bit memory
11011 100 : mod 011 r/m
ST(i)
11011 000 : 11 011 ST(i)
FCOMPP – Compare Real and Pop Twice
11011 110 : 11 011 001
FCOMI – Compare Real and Set EFLAGS
11011 011 : 11 110 ST(i)
FCOMIP – Compare Real, Set EFLAGS, and Pop11011 111 : 11 110 ST(i)
FCOS – Cosine of ST(0)
11011 001 : 1111 1111
FDECSTP – Decrement Stack-Top Pointer
 11011 001 : 1111 0110
FDIV – Divide
ST(0) 
<
 ST(0) ? 32-bit memory
11011 000 : mod 110 r/m
ST(0) 
<
 ST(0) ? 64-bit memory
11011 100 : mod 110 r/m
ST(d) 
<
 ST(0) ? ST(i)
11011 d00 : 1111 R ST(i)
FDIVP – Divide and Pop
ST(0) 
<
 ST(0) ? ST(i)
11011 110 : 1111 1 ST(i)
<<<    Index    >>>