AMD Confidential
User Manual September 12h, 2008
196 Appendix A
Instruction
Supported
Mnemonic
Opcode
Description
CALL reg/mem32
FF /2
Near call with the target specified
by reg/mem32.
CALL reg/mem64
FF /2
Near call with the target specified
by reg/mem64.
CALL FAR pntr16:16
9A cd
Far call direct, with the target
specified by a far pointer contained
in the instruction.
CALL FAR pntr16:32
9A cp
Far call direct, with the target
specified by a far pointer contained
in the instruction.
CALL FAR mem16:16
FF /3
Far call indirect, with the target
specified by a far pointer in memory.
CALL FAR mem16:32
FF /3
Far call indirect, with the target
specified by a far pointer in memory.
CBW
98
Sign-extend AL into AX.
CWDE
98
Sign-extend AX into EAX.
CDQE
98
Sign-extend EAX into RAX.
CWD
99
Sign-extend AX into DX:AX.
CDQ
99
Sign-extend EAX into EDX:EAX.
CQO
99
Sign-extend RAX into RDX:RAX.
CLC
F8
Clear the carry flag (CF) to zero.
CLD
FC
Clear the direction flag (DF) to
zero.
CFLUSH mem8
0F AE /7
Flush cache line containing mem8.
CMC
F5
Complement the carry flag (CF).
CMOVO reg16,reg/mem16
0F 40 /r
Move if overflow (OF = 1).
CMOVO reg32,reg/mem32
0F 40 /r
Move if overflow (OF = 1).
CMOVO reg64,reg/mem64
0F 40 /r
Move if overflow (OF = 1).
CMOVNO reg16,reg/mem16
0F 41 /r
Move if not overflow (OF = 0).
CMOVNO reg32,reg/mem32
0F 41 /r
Move if not overflow (OF = 0).
CMOVNO reg64,reg/mem64
0F 41 /r
Move if not overflow (OF = 0).
CMOVB reg16,reg/mem16
0F 42 /r
Move if below (CF = 1).
CMOVB reg32,reg/mem32
0F 42 /r
Move if below (CF = 1).
CMOVB reg64,reg/mem64
0F 42 /r
Move if below (CF = 1).
CMOVC reg16,reg/mem16
0F 42 /r
Move if carry (CF = 1).
CMOVC reg32,reg/mem32
0F 42 /r
Move if carry (CF = 1).
CMOVC reg64,reg/mem64
0F 42 /r
Move if carry (CF = 1).
CMOVNAE reg16,reg/mem16
0F 42 /r
Move if not above or equal (CF = 1).
CMOVNAE reg32,reg/mem32
0F 42 /r
Move if not above or equal (CF = 1).
CMOVNAE reg64,reg/mem64
0F 42 /r
Move if not above or equal (CF = 1).
CMOVNB reg16,reg/mem16
0F 43 /r
Move if not below (CF = 0).
CMOVNB reg32,reg/mem32
0F 43 /r
Move if not below (CF = 0).
CMOVNB reg64,reg/mem64
0F 43 /r
Move if not below (CF = 0).
CMOVNC reg16,reg/mem16
0F 43 /r
Move if not carry (CF = 0).
CMOVNC reg32,reg/mem32
0F 43 /r
Move if not carry (CF = 0).
CMOVNC reg64,reg/mem64
0F 43 /r
Move if not carry (CF = 0).
CMOVAE reg16,reg/mem16
0F 43 /r
Move if above or equal (CF = 0).
CMOVAE reg32,reg/mem32
0F 43 /r
Move if above or equal (CF = 0).
CMOVAE reg64,reg/mem64
0F 43 /r
Move if above or equal (CF = 0).
CMOVZ reg16,reg/mem16
0F 44 /r
Move if zero (ZF = 1).
CMOVZ reg32,reg/mem32
0F 44 /r
Move if zero (ZF = 1).
CMOVZ reg64,reg/mem64
0F 44 /r
Move if zero (ZF = 1).
CMOVE reg16,reg/mem16
0F 44 /r
Move if equal (ZF = 1).
CMOVE reg32,reg/mem32
0F 44 /r
Move if equal (ZF = 1).
CMOVE reg64,reg/mem64
0F 44 /r
Move if equal (ZF = 1).
CMOVNZ reg16,reg/mem16
0F 45 /r
Move if not zero (ZF = 0).
CMOVNZ reg32,reg/mem32
0F 45 /r
Move if not zero (ZF = 0).