8086
Table 2. Instruction Set Summary (Continued)
Mnemonic and
Description
Instruction Code
LOGIC | 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 |
NOT e Invert |
|
|
|
|
1 1 1 1 0 1 1 w | mod 0 1 0 r/m |
|
| |
SHL/SAL e Shift Logical/Arithmetic Left | 1 1 0 1 0 0 v w | mod 1 0 0 r/m |
|
|
SHR e Shift Logical Right | 1 1 0 1 0 0 v w | mod 1 0 1 r/m |
|
|
SAR e Shift Arithmetic Right | 1 1 0 1 0 0 v w | mod 1 1 1 r/m |
|
|
ROL e Rotate Left | 1 1 0 1 0 0 v w | mod 0 0 0 r/m |
|
|
ROR e Rotate Right | 1 1 0 1 0 0 v w | mod 0 0 1 r/m |
|
|
RCL e Rotate Through Carry Flag Left | 1 1 0 1 0 0 v w | mod 0 1 0 r/m |
|
|
RCR e Rotate Through Carry Right | 1 1 0 1 0 0 v w | mod 0 1 1 r/m |
|
|
AND e And: |
|
|
|
|
Reg./Memory and Register to Either | 0 0 1 0 0 0 d w | mod reg r/m |
|
|
|
|
|
|
|
Immediate to Register/Memory | 1 0 0 0 0 0 0 w | mod 1 0 0 r/m | data | data if w e 1 |
|
|
|
|
|
Immediate to Accumulator | 0 0 1 0 0 1 0 w | data | data if w e 1 |
|
TEST e And Function to Flags, No Result: |
|
|
|
|
Register/Memory and Register | 1 0 0 0 0 1 0 w | mod reg r/m |
|
|
|
|
|
|
|
Immediate Data and Register/Memory | 1 1 1 1 0 1 1 w | mod 0 0 0 r/m | data | data if w e 1 |
|
|
|
|
|
Immediate Data and Accumulator | 1 0 1 0 1 0 0 w | data | data if w e 1 |
|
OR e Or: |
|
|
|
|
Reg./Memory and Register to Either | 0 0 0 0 1 0 d w | mod reg r/m |
|
|
|
|
|
|
|
Immediate to Register/Memory | 1 0 0 0 0 0 0 w | mod 0 0 1 r/m | data | data if w e 1 |
|
|
|
|
|
Immediate to Accumulator | 0 0 0 0 1 1 0 w | data | data if w e 1 |
|
XOR e Exclusive or: |
|
|
|
|
Reg./Memory and Register to Either | 0 0 1 1 0 0 d w | mod reg r/m |
|
|
|
|
|
|
|
Immediate to Register/Memory | 1 0 0 0 0 0 0 w | mod 1 1 0 r/m | data | data if w e 1 |
|
|
|
|
|
Immediate to Accumulator | 0 0 1 1 0 1 0 w | data | data if w e 1 |
|
STRING MANIPULATION |
|
|
|
|
REP e Repeat |
|
|
|
|
1 1 1 1 0 0 1 z |
|
|
| |
MOVS e Move Byte/Word |
|
|
|
|
1 0 1 0 0 1 0 w |
|
|
| |
CMPS e Compare Byte/Word |
|
|
|
|
1 0 1 0 0 1 1 w |
|
|
| |
SCAS e Scan Byte/Word |
|
|
|
|
1 0 1 0 1 1 1 w |
|
|
| |
LODS e Load Byte/Wd to AL/AX |
|
|
|
|
1 0 1 0 1 1 0 w |
|
|
| |
STOS e Stor Byte/Wd from AL/A |
|
|
|
|
1 0 1 0 1 0 1 w |
|
|
| |
CONTROL TRANSFER |
|
|
|
|
CALL e Call: |
|
|
|
|
Direct within Segment | 1 1 1 0 1 0 0 0 |
| ||
|
|
|
|
|
Indirect within Segment | 1 1 1 1 1 1 1 1 | mod 0 1 0 r/m |
|
|
|
|
|
|
|
Direct Intersegment | 1 0 0 1 1 0 1 0 |
|
Indirect Intersegment
1 1 1 1 1 1 1 1 | mod 0 1 1 r/m |
Mnemonics ' Intel, 1978
28