AMD Confidential
User Manual
September 12
th
, 2008
Appendix A
201
Instruction
Supported
Mnemonic
Opcode
Description
IMUL
reg64
,
reg/mem64
,
imm8
6B /r
ib
Multiply the contents of a 64-bit
register or memory operand by a sign-
extended immediate byte and put the
signed
result
in
the
64-bit
destination register.
IMUL
reg16
,
reg/mem16
,
imm16
69 /r
iw
Multiply the contents of a 16-bit
register or memory operand by a sign-
extended immediate word and put the
signed
result
in
the
16-bit
destination register.
IMUL
reg32
,
reg/mem32
,
imm32
69 /r
id
Multiply the contents of a 32-bit
register or memory operand by a sign-
extended immediate double and put the
signed
result
in
the
32-bit
destination register.
IMUL
reg64
,
reg/mem64
,
imm32
69 /r
id
Multiply the contents of a 64-bit
register or memory operand by a sign-
extended immediate double and put the
signed
result
in
the
64-bit
destination register.
IN AL,
imm8
E4
ib
Input a byte from the port at the
address specified by
imm8
and put it
into the AL register.
IN AX,
imm8
E5
ib
Input a word from the port at the
address specified by
imm8
and put it
into the AX register.
IN EAX,
imm8
E5
ib
Input a doubleword from the port at
the address specified by
imm8
and put
it into the EAX register.
IN AL,DX
EC
Input a byte from the port at the
address specified by the DX register
and put it into the AL register.
IN AX,DX
ED
Input a word from the port at the
address specified by the DX register
and put it into the AX register.
IN EAX,EDX
ED
Input a doubleword from the port at
the address specified by the EDX
register and put it into the EAX
register.
INC
reg/mem8
FE /0
Increment the contents of an 8-bit
register or memory location by 1.
INC
reg/mem16
FF /0
Increment the contents of a 16-bit
register or memory location by 1.
INC
reg/mem32
FF /0
Increment the contents of a 32-bit
register or memory location by 1.
INC
reg/mem64
FF /0
Increment the contents of a 64-bit
register or memory location by 1.
INC
reg16
40
+rw
Increment the contents of a 16-bit
register by 1.
INC
reg32
40
+rd
Increment the contents of a 32-bit
register by 1.
INS
mem8
,DX
6C
Input a byte from the port specified
by DX, put it into the memory
location specified in ES:rDI, and
then increment or decrement rDI.
INS
mem16
,DX
6D
Input a word from the port specified
by DX, put it into the memory
location specified in ES:rDI, and
then increment or decrement rDI.
INS
mem32
,DX
6D
Input a doubleword from the port
specified by DX, put it into the
memory location specified in ES:rDI,
and then increment or decrement rDI.
INSB
6C
Input a byte from the port specified
by DX, put it into the memory
location specified in ES:rDI, and
then increment or decrement rDI.
INSW
6D
Input a word from the port specified
by DX, put it into the memory
location specified in ES:rDI, and
then increment or decrement rDI.
INSD
6D
Input a doubleword from the port
specified by DX, put it into the
memory location specified in ES:rDI,
and then increment or decrement rDI.
INT
imm8
CD
ib
Calls
interrupt
service
routine
specified by interrupt vector
imm8
.