INSTRUCTION SET DESCRIPTIONS

 

Table C-4. Instruction Set (Continued)

 

 

 

 

 

Name

Description

Operation

Flags

Affected

 

 

 

 

 

 

 

AAS

ASCII Adjust for Subtraction:

if

AF

 

AAS

((AL) and 0FH) > 9 or (AF) = 1

CF ¸

 

Corrects the result of a previous

then

DF –

 

(AL) (AL) – 6

IF –

 

subtraction of two valid unpacked

 

(AH) (AH) – 1

OF ?

 

decimal operands (the destination

 

(AF) 1

PF ?

 

operand must have been specified as

 

(CF) (AF)

SF ?

 

register AL). Changes the content of

 

(AL) (AL) and 0FH

TF –

 

AL to a valid unpacked decimal

 

 

ZF ?

 

number; the high-order half-byte is

 

 

 

 

 

zeroed.

 

 

 

Instruction Operands:

 

 

 

none

 

 

 

 

 

 

ADC

Add with Carry:

if

AF

 

ADC dest, src

(CF) = 1

CF

 

then

DF –

 

Sums the operands, which may be

 

(dest) (dest) + (src) + 1

IF –

 

bytes or words, adds one if CF is set

 

else

OF

 

and replaces the destination operand

 

(dest) (dest) + (src)

PF

 

with the result. Both operands may be

 

 

SF

 

signed or unsigned binary numbers

 

 

 

TF –

 

(see AAA and DAA). Since ADC incor-

 

 

 

ZF ¸

 

porates a carry from a previous

 

 

 

operation, it can be used to write

 

 

 

routines to add numbers longer than

 

 

 

16 bits.

 

 

 

Instruction Operands:

 

 

 

ADC reg, reg

 

 

 

ADC reg, mem

 

 

 

ADC mem, reg

 

 

 

ADC reg, immed

 

 

 

ADC mem, immed

 

 

 

ADC accum, immed

 

 

 

 

 

 

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

C-5

Page 328
Image 328
Intel 80C188XL, 80C186XL user manual Aas, Ascii Adjust for Subtraction, Adc, Add with Carry, ADC dest, src