80C186EB/80C188EB, 80L186EB/80L188EB
INSTRUCTION SET SUMMARY
(Continued)
80C186EB
80C188EB
Function
Format
Clock
Clock
Comments
Cycles
Cycles
ARITHMETIC
(Continued)
IMUL
e
Integer multiply (signed):
1 1 1 1 0 1 1 w
mod 1 0 1 r/m
Register-Byte
25–28
25–28
Register-Word
34–37
34–37
Memory-Byte
31–34
31–34
Memory-Word
40–43
40–43
*
IMUL
e
Integer Immediate multiply
0 1 1 0 1 0 s 1
mod reg r/m
data
data if s
e
0
22–25/
22–25/
(signed)
29–32
29–32
DIV
e
Divide (unsigned):
1 1 1 1 0 1 1 w
mod 1 1 0 r/m
Register-Byte
29
29
Register-Word
38
38
Memory-Byte
35
35
Memory-Word
44
44
*
IDIV
e
Integer divide (signed):
1 1 1 1 0 1 1 w
mod 1 1 1 r/m
Register-Byte
44–52
44–52
Register-Word
53–61
53–61
Memory-Byte
50–58
50–58
Memory-Word
59–67
59–67
*
AAM
e
ASCII adjust for multiply
1 1 0 1 0 1 0 0
0 0 0 0 1 0 1 0
19
19
AAD
e
ASCII adjust for divide
1 1 0 1 0 1 0 1
0 0 0 0 1 0 1 0
15
15
CBW
e
Convert byte to word
1 0 0 1 1 0 0 0
2
2
CWD
e
Convert word to double word
1 0 0 1 1 0 0 1
4
4
LOGIC
Shift/Rotate Instructions:
Register/Memory by 1
1 1 0 1 0 0 0 w
mod TTT r/m
2/15
2/15
Register/Memory by CL
1 1 0 1 0 0 1 w
mod TTT r/m
5
a
n/17
a
n 5
a
n/17
a
n
Register/Memory by Count
1 1 0 0 0 0 0 w
mod TTT r/m
count
5
a
n/17
a
n 5
a
n/17
a
n
TTT Instruction
0 0 0
ROL
0 0 1
ROR
0 1 0
RCL
0 1 1
RCR
1 0 0
SHL/SAL
1 0 1
SHR
1 1 1
SAR
AND
e
And:
Reg/memory and register to either
0 0 1 0 0 0 d w
mod reg r/m
3/10
3/10
*
Immediate to register/memory
1 0 0 0 0 0 0 w
mod 1 0 0 r/m
data
data if w
e
1
4/16
4/16
*
Immediate to accumulator
0 0 1 0 0 1 0 w
data
data if w
e
1
3/4
3/4
*
8/16-bit
TEST
e
And function to flags, no result:
Register/memory and register
1 0 0 0 0 1 0 w
mod reg r/m
3/10
3/10
*
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
4/10
4/10
*
Immediate data and accumulator
1 0 1 0 1 0 0 w
data
data if w
e
1
3/4
3/4
8/16-bit
OR
e
Or:
Reg/memory and register to either
0 0 0 0 1 0 d w
mod reg r/m
3/10
3/10
*
Immediate to register/memory
1 0 0 0 0 0 0 w
mod 0 0 1 r/m
data
data if w
e
1
4/16
4/16
*
Immediate to accumulator
0 0 0 0 1 1 0 w
data
data if w
e
1
3/4
3/4
*
8/16-bit
Shaded areas indicate instructions not available in 8086/8088 microsystems.
NOTE:
*
Clock cycles shown for byte transfers. For word operations, add 4 clock cycles for all memory transfers.
55