Instruction Set (Continued)
Table 8-27. Processor Core Instruction Set Summary (Continued)
Real
Mode
Prot’d Real Prot’d
Mode Mode Mode
Flags
O
F
D
F
I
F
T
F
S
F
Z
F
A
F
P
F
C
F
Clock Count
(Reg/Cache Hit)
Instruction
CMOVS Move if Sign
Opcode
Issues
Register, Register/Memory
CMOVNS Move if Not Sign
Register, Register/Memory
CMP Compare Integers
0F 48 [mod reg r/m]
0F 49 [mod reg r/m]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
1
1
1
1
r
r
-
-
-
-
-
-
Register to Register
3 [10dw] [11 reg r/m]
3 [101w] [mod reg r/m]
3 [100w] [mod reg r/m]
8 [00sw] [mod 111 r/m] ###
3 [110w] ###
x
x
x
x
x
x
1
1
1
1
1
6
1
1
1
1
1
6
b
b
h
Register to Memory
Memory to Register
Immediate to Register/Memory
Immediate to Accumulator
CMPS Compare String
A [011w]
x
x
-
-
-
-
-
-
x
x
x
x
x
x
x
x
x
x
h
CMPXCHG Compare and Exchange
Register1, Register2
0F B [000w] [11 reg2 reg1]
6
6
6
6
Memory, Register
0F B [000w] [mod reg r/m]
CMPXCHG8B Compare and Exchange 8 Bytes
CPUID CPU Identification
0F C7 [mod 001 r/m]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
0F A2
0F 3C
0F 3D
99
12
1
12
1
CPU_READ Read Special CPU Register
CPU_WRITE Write Special CPU Register
CWD Convert Word to Doubleword
CWDE Convert Word to Doubleword Extended
DAA Decimal Adjust AL after Add
DAS Decimal Adjust AL after Subtract
DEC Decrement by 1
1
1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
2
2
98
-
-
-
-
-
3
3
27
x
x
x
x
x
x
x
x
x
x
2
2
2F
2
2
Register/Memory
F [111w] [mod 001 r/m]
4 [1 reg]
x
-
-
-
-
-
-
-
x
x
x
x
x
x
-
-
1
1
1
1
b
h
Register (short form)
DIV Unsigned Divide
Accumulator by Register/Memory
Divisor: Byte
Word
F [011w] [mod 110 r/m]
u
u
b,e
e,h
h
20
29
45
20
29
45
Doubleword
ENTER Enter New Stack Frame
Level = 0
C8 ##,#
-
-
-
-
-
-
-
-
-
13
17
13
17
b
Level = 1
Level (L) > 1
17+2*L 17+2*L
HLT Halt
F4
-
-
-
-
-
-
-
-
-
-
-
-
-
-
10
10
l
IDIV Integer (Signed) Divide
Accumulator by Register/Memory
Divisor: Byte
Word
F [011w] [mod 111 r/m]
x
x
u
u
b,e
b
e,h
20
29
45
20
29
45
Doubleword
IMUL Integer (Signed) Multiply
Accumulator by Register/Memory
F [011w] [mod 101 r/m]
0F AF [mod reg r/m]
x
-
-
-
x
x
u
u
x
h
Multiplier:
Byte
Word
Doubleword
4
5
15
4
5
15
Register with Register/Memory
Multiplier:
Word
5
5
Doubleword
15
15
Register/Memory with Immediate to Register2 6 [10s1] [mod reg r/m] ###
Multiplier:
Word
6
6
Doubleword
16
16
IN Input from I/O Port
Fixed Port
E [010w] #
E [110w]
6 [110w]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
8
8
8/22
8/22
m
Variable Port
INS Input String from I/O Port
11
11/25
b
h,m
Revision 1.1
225
www.national.com