![Intel ITANIUM ARCHITECTURE Manual Download Page 214](http://html.mh-extra.com/html/intel/itanium-architecture/itanium-architecture_manual_2073403214.webp)
Volume 4: Base IA-32 Instruction Reference
4:207
IMUL—Signed Multiply
Description
Performs a signed multiplication of two operands. This instruction has three forms,
depending on the number of operands.
•
One-operand form.
This form is identical to that used by the MUL instruction.
Here, the source operand (in a general-purpose register or memory location) is
multiplied by the value in the AL, AX, or EAX register (depending on the operand
size) and the product is stored in the AX, DX:AX, or EDX:EAX registers,
respectively.
•
Two-operand form.
With this form the destination operand (the first operand) is
multiplied by the source operand (second operand). The destination operand is a
general-purpose register and the source operand is an immediate value, a
general-purpose register, or a memory location. The product is then stored in the
destination operand location.
•
Three-operand form.
This form requires a destination operand (the first operand)
and two source operands (the second and the third operands). Here, the first
source operand (which can be a general-purpose register or a memory location) is
multiplied by the second source operand (an immediate value). The product is then
stored in the destination operand (a general-purpose register).
When an immediate value is used as an operand, it is sign-extended to the length of
the destination operand format.
The CF and OF flags are set when significant bits are carried into the upper half of the
result. The CF and OF flags are cleared when the result fits exactly in the lower half of
the result.
Opcode
Instruction
Description
F6 /5
IMUL
r/m8
AX
AL
r/m
byte
F7 /5
IMUL
r/m16
DX:AX
AX
r/m
word
F7 /5
IMUL
r/m32
EDX:EAX
EAX
r/m
doubleword
0F AF /
r
IMUL
r16,r/m16
word register
word register
r/m
word
0F AF /
r
IMUL
r32,r/m32
doubleword register
doubleword register
r/m
doubleword
6B /
r ib
IMUL
r16,r/m16,imm8
word register
r/m16
sign-extended immediate byte
6B /
r ib
IMUL
r32,r/m32,imm8
doubleword register
r/m32
sign-extended immediate byte
6B /
r ib
IMUL
r16,imm8
word register
word register
sign-extended immediate byte
6B /
r ib
IMUL
r32,imm8
doubleword register
doubleword register
sign-extended
immediate byte
69 /
r iw
IMUL
r16,r/
m16,imm16
word register
r/m16
immediate word
69 /
r id
IMUL
r32,r/
m32,imm32
doubleword register
r/m32
immediate doubleword
69 /
r iw
IMUL
r16,imm16
word register
r/m16
immediate word
69 /
r id
IMUL
r32,imm32
doubleword register
r/m32
immediate doubleword
Summary of Contents for ITANIUM ARCHITECTURE
Page 1: ......
Page 7: ...402 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 199: ...4 192 Volume 4 Base IA 32 Instruction Reference FWAIT Wait See entry for WAIT ...
Page 352: ...Volume 4 Base IA 32 Instruction Reference 4 345 ROL ROR Rotate See entry for RCL RCR ROL ROR ...
Page 589: ...4 582 Volume 4 IA 32 SSE Instruction Reference ...
Page 590: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 Index ...
Page 591: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 603: ...INDEX Index 12 Index for Volumes 1 2 3 and 4 ...
Page 604: ......