Intel 8086-1, 8086-2 manual Arithmetic

Models: 8086 8086-2 8086-1

1 30
Download 30 pages 60.28 Kb
Page 27
Image 27
CWD e
CBW e
IDIV e AAD e
IMUL e
DIV e
AAM e
MUL e
DAS e
AAS e

8086

Table 2. Instruction Set Summary (Continued)

Mnemonic and

Description

Instruction Code

ARITHMETIC

ADD e Add:

Reg./Memory with Register to Either Immediate to Register/Memory Immediate to Accumulator

ADC e Add with Carry: Reg./Memory with Register to Either Immediate to Register/Memory Immediate to Accumulator

7 6 5 4 3 2 1 0

7 6 5 4 3 2 1 0

7 6 5 4 3 2 1 0

7 6 5 4 3 2 1 0

 

 

 

 

0 0 0 0 0 0 d w

mod reg r/m

 

 

 

 

 

 

1 0 0 0 0 0 s w

mod 0 0 0 r/m

data

data if s: w e 01

 

 

 

 

0 0 0 0 0 1 0 w

data

data if w e 1

 

 

 

 

 

0 0 0 1 0 0 d w

mod reg r/m

 

 

 

 

 

 

1 0 0 0 0 0 s w

mod 0 1 0 r/m

data

data if s: w e 01

 

 

 

 

0 0 0 1 0 1 0 w

data

data if w e 1

 

INC e Increment:

Register/Memory

Register

AAAe ASCII Adjust for Add

BAA e Decimal Adjust for Add SUB e Subtract:

Reg./Memory and Register to Either Immediate from Register/Memory Immediate from Accumulator

SSB e Subtract with Borrow Reg./Memory and Register to Either Immediate from Register/Memory Immediate from Accumulator

DEC e Decrement:

Register/memory

Register

NEG e Change sign CMP e Compare: Register/Memory and Register Immediate with Register/Memory Immediate with Accumulator

ASCII Adjust for Subtract

Decimal Adjust for Subtract

Multiply (Unsigned)

Integer Multiply (Signed)

ASCII Adjust for Multiply

Divide (Unsigned)

Integer Divide (Signed) ASCII Adjust for Divide Convert Byte to Word Convert Word to Double Word

1 1 1 1 1 1 1 w

mod 0 0 0 r/m

 

 

 

 

 

 

0 1 0 0 0 reg

 

 

 

 

 

 

 

0 0 1 1 0 1 1 1

 

 

 

 

 

 

 

0 0 1 0 0 1 1 1

 

 

 

 

 

 

 

0 0 1 0 1 0 d w

mod reg r/m

 

 

 

 

 

 

1 0 0 0 0 0 s w

mod 1 0 1 r/m

data

data if s w e 01

 

 

 

 

0 0 1 0 1 1 0 w

data

data if w e 1

 

 

 

 

 

0 0 0 1 1 0 d w

mod reg r/m

 

 

 

 

 

 

1 0 0 0 0 0 s w

mod 0 1 1 r/m

data

data if s w e 01

 

 

 

 

0 0 0 1 1 1 w

data

data if w e 1

 

 

 

 

 

1 1 1 1 1 1 1 w

mod 0 0 1 r/m

 

 

 

 

 

 

0 1 0 0 1 reg

 

 

 

 

 

 

 

1 1 1 1 0 1 1 w

mod 0 1 1 r/m

 

 

 

 

 

 

0 0 1 1 1 0 d w

mod reg r/m

 

 

 

 

 

 

1 0 0 0 0 0 s w

mod 1 1 1 r/m

data

data if s w e 01

 

 

 

 

0 0 1 1 1 1 0 w

data

data if w e 1

 

 

 

 

 

0 0 1 1 1 1 1 1

 

 

 

 

 

 

 

0 0 1 0 1 1 1 1

 

 

 

 

 

 

 

1 1 1 1 0 1 1 w

mod 1 0 0 r/m

 

 

 

 

 

 

1 1 1 1 0 1 1 w

mod 1 0 1 r/m

 

 

 

 

 

 

1 1 0 1 0 1 0 0

0 0 0 0 1 0 1 0

 

 

 

 

 

 

1 1 1 1 0 1 1 w

mod 1 1 0 r/m

 

 

 

 

 

 

1 1 1 1 0 1 1 w

mod 1 1 1 r/m

 

 

 

 

 

 

1 1 0 1 0 1 0 1

0 0 0 0 1 0 1 0

 

 

 

 

 

 

1 0 0 1 1 0 0 0

 

 

 

 

 

 

 

1 0 0 1 1 0 0 1

 

 

 

Mnemonics ' Intel, 1978

27

Page 27
Image 27
Intel 8086-1, 8086-2 manual Arithmetic