Intel 8086-1 User Manual
Page 27
8086
Table 2 Instruction Set Summary
(Continued)
Mnemonic and
Instruction Code
Description
ARITHMETIC
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
ADD
e
Add
Reg Memory with Register to Either
0 0 0 0 0 0 d w
mod reg r m
Immediate to Register Memory
1 0 0 0 0 0 s w
mod 0 0 0 r m
data
data if s w
e
01
Immediate to Accumulator
0 0 0 0 0 1 0 w
data
data if w
e
1
ADC
e
Add with Carry
Reg Memory with Register to Either
0 0 0 1 0 0 d w
mod reg r m
Immediate to Register Memory
1 0 0 0 0 0 s w
mod 0 1 0 r m
data
data if s w
e
01
Immediate to Accumulator
0 0 0 1 0 1 0 w
data
data if w
e
1
INC
e
Increment
Register Memory
1 1 1 1 1 1 1 w
mod 0 0 0 r m
Register
0 1 0 0 0 reg
AAA
e
ASCII Adjust for Add
0 0 1 1 0 1 1 1
BAA
e
Decimal Adjust for Add
0 0 1 0 0 1 1 1
SUB
e
Subtract
Reg Memory and Register to Either
0 0 1 0 1 0 d w
mod reg r m
Immediate from Register Memory
1 0 0 0 0 0 s w
mod 1 0 1 r m
data
data if s w
e
01
Immediate from Accumulator
0 0 1 0 1 1 0 w
data
data if w
e
1
SSB
e
Subtract with Borrow
Reg Memory and Register to Either
0 0 0 1 1 0 d w
mod reg r m
Immediate from Register Memory
1 0 0 0 0 0 s w
mod 0 1 1 r m
data
data if s w
e
01
Immediate from Accumulator
0 0 0 1 1 1 w
data
data if w
e
1
DEC
e
Decrement
Register memory
1 1 1 1 1 1 1 w
mod 0 0 1 r m
Register
0 1 0 0 1 reg
NEG
e
Change sign
1 1 1 1 0 1 1 w
mod 0 1 1 r m
CMP
e
Compare
Register Memory and Register
0 0 1 1 1 0 d w
mod reg r m
Immediate with Register Memory
1 0 0 0 0 0 s w
mod 1 1 1 r m
data
data if s w
e
01
Immediate with Accumulator
0 0 1 1 1 1 0 w
data
data if w
e
1
AAS
e
ASCII Adjust for Subtract
0 0 1 1 1 1 1 1
DAS
e
Decimal Adjust for Subtract
0 0 1 0 1 1 1 1
MUL
e
Multiply (Unsigned)
1 1 1 1 0 1 1 w
mod 1 0 0 r m
IMUL
e
Integer Multiply (Signed)
1 1 1 1 0 1 1 w
mod 1 0 1 r m
AAM
e
ASCII Adjust for Multiply
1 1 0 1 0 1 0 0
0 0 0 0 1 0 1 0
DIV
e
Divide (Unsigned)
1 1 1 1 0 1 1 w
mod 1 1 0 r m
IDIV
e
Integer Divide (Signed)
1 1 1 1 0 1 1 w
mod 1 1 1 r m
AAD
e
ASCII Adjust for Divide
1 1 0 1 0 1 0 1
0 0 0 0 1 0 1 0
CBW
e
Convert Byte to Word
1 0 0 1 1 0 0 0
CWD
e
Convert Word to Double Word
1 0 0 1 1 0 0 1
Mnemonics
Intel 1978
27