THE 80286 INSTRUCTION SET

MUL-Unsigned Multiplication of AL or AX

Opcode

Instruction

Clocks

Description

F6

/4

MUL eb

13,mem=16

Unsigned multiply (AX = AL X EA byte)

F7

/4

MUL ew

21,mem=24

Unsigned multiply (DXAX = AX X EA word)

FLAGS MODIFIED

Overflow, carry

FLAGS UNDEFINED

Sign, zero, auxiliary carry, parity

OPERATION

If MUL has a byte operand, then the byte is multiplied by AL, and the result is left in AX. Carry and overflow are set to 0 if AH is 0; they are set to 1 otherwise.

If MUL has a word operand, then the word is multiplied by AX, and the result is left in DX:AX. DX contains the high order 16 bits of the product. Carry and overflow are set to 0 if DX is 0; they are set to 1 otherwise.

PROTECTED MODE EXCEPTIONS

#GP(O) for an illegal memory operand effective address in the CS, DS, or ES segments; #SS(O) for an illegal address in the SS segment.

REAL ADDRESS MODE EXCEPTIONS

Interrupt 13 for a word operand at offset OFFFFH.

8-76

Page 286
Image 286
Intel 80287, 80286 manual MUL-Unsigned Multiplication of AL or AX