Intel 80C188XL User Manual

Page 360

Advertising
background image

C-37

INSTRUCTION SET DESCRIPTIONS

REP
REPE
REPZ
REPNE
REPNZ

Repeat:
Repeat While Equal:
Repeat While Zero:
Repeat While Not Equal:
Repeat While Not Zero:

Controls subsequent string instruction
repetition. The different mnemonics
are provided to improve program
clarity.

REP is used in conjunction with the
MOVS (Move String) and STOS (Store
String) instructions and is interpreted
as "repeat while not end-of-string" (CX
not 0).

REPE and REPZ operate identically
and are physically the same prefix byte
as REP. These instructions are used
with the CMPS (Compare String) and
SCAS (Scan String) instructions and
require ZF (posted by these instruc-
tions) to be set before initiating the
next repetition.

REPNE and REPNZ are mnemonics
for the same prefix byte. These
instructions function the same as
REPE and REPZ except that the zero
flag must be cleared or the repetition is
terminated. ZF does not need to be
initialized before executing the
repeated string instruction.

Instruction Operands:

none

do while (CX)

0

service pending interrupts (if any)
execute primitive string
Operation in succeeding byte
(CX)

(CX) – 1

if

primitive operation is CMPB,
CMPW, SCAB, or SCAW and
(ZF)

≠ 0

then

exit from while loop

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: