Intel 80C186XL Computer Hardware User Manual


 
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