Intel 80C188XL User Manual

Page 336

Advertising
background image

C-13

INSTRUCTION SET DESCRIPTIONS

DIV

Divide:

DIV

src

Performs an unsigned division of the
accumulator (and its extension) by the
source operand.

If the source operand is a byte, it is
divided into the two-byte dividend
assumed to be in registers AL and AH.
The byte quotient is returned in AL,
and the byte remainder is returned in
AH.

If the source operand is a word, it is
divided into the two-word dividend in
registers AX and DX. The word
quotient is returned in AX, and the
word remainder is returned in DX.

If the quotient exceeds the capacity of
its destination register (FFH for byte
source, FFFFH for word source), as
when division by zero is attempted, a
type 0 interrupt is generated, and the
quotient and remainder are undefined.
Nonintegral quotients are truncated to
integers.

Instruction Operands:

DIV reg
DIV mem

When Source Operand is a Byte:

(temp)

(byte-src)

if

(temp) / (AX) > FFH

then (type 0 interrupt is generated)

(SP)

(SP) – 2

((SP) + 1:(SP))

FLAGS

(IF)

0

(TF)

0

(SP)

(SP) – 2

((SP) + 1:(SP))

(CS)

(CS)

(2)

(SP)

(SP) – 2

((SP) + 1:(SP))

(IP)

(IP)

(0)

else

(AL)

(temp) / (AX)

(AH)

(temp) % (AX)

When Source Operand is a Word:

(temp)

(word-src)

if

(temp) / (DX:AX) > FFFFH

then (type 0 interrupt is generated)

(SP)

(SP) – 2

((SP) + 1:(SP))

FLAGS

(IF)

0

(TF)

0

(SP)

(SP) – 2

((SP) + 1:(SP))

(CS)

(CS)

(2)

(SP)

(SP) – 2

((SP) + 1:(SP))

(IP)

(IP)

(0)

else

(AX)

(temp) / (DX:AX)

(DX)

(temp) % (DX:AX)

AF ?
CF ?
DF –
IF –
OF ?
PF ?
SF ?
TF –
ZF ?

Table C-4. Instruction Set (Continued)

Name

Description

Operation

Flags

Affected

NOTE:

The three symbols used in the Flags Affected column are defined as follows:
– the contents of the flag remain unchanged after the instruction is executed
? the contents of the flag is undefined after the instruction is executed

ü

the flag is updated after the instruction is executed

Advertising
This manual is related to the following products: