Intel 80386 DJ Equipment User Manual


 
intJ
80386
8.
INSTRUCTION SET
This section describes the 80386 instruction set. A
table lists
all
instructions along with instruction
en-
coding diagrams and clock counts. Further details of
the instruction encoding are then provided
in
the fol-
lowing sections, which completely describe the
en-
coding structure
and
the definition of
all
fields occur-
ring
within 80386 instructions.
8.1
80386 INSTRUCTION ENCODING
AND
CLOCK
COUNT
SUMMARY
To calculate elapsed time for
an
instruction, multiply
the instruction clock count,
as
listed
in
Table
8-1
below,
by
the processor clock period
(e.g.
62.5
ns
for
an
80386-16 operating at 16 MHz
(32
MHz CLK2
signal)). The actual clock count of
an
80386 pro-
gram will average 5% more than the calculated
clock count
due
to instruction sequences which
exe-
cute faster than they can be fetched from memory.
For
more
detailed information on the encodings of
instructions refer to section 8.2 Instruction Encod-
ings. Section
8.2
explains the general structure of
instruction encodings,
and
defines exactly the
en-
codings of
all
fields contained within the instruction.
110
Instruction Clock Count Assumptions
1.
The instruction has been prefetched, decoded,
and
is ready for execution.
2.
Bus
cycles do not require wait states.
3.
There are no local
bus
HOLD
requests delaying
processor access to the
bus.
4.
No exceptions are detected during instruction
ex-
ecution.
5.
If
an
effective address
is
calculated, it does not
use
two general register components. One regis-
ter,
scaling and displacement can be used within
the clock counts shown. However, if the effective
address calculation uses two general register
components, add 1 clock to the clock count
shown.
Instruction Clock Count Notation
1.
If two clock counts
are
given, the smaller refers to
a register operand and the
larger refers to a mem-
ory operand.
2.
n = number of times repeated.
3.
m = number of components
in
the next instruc-
tion executed, where the entire displacement (if
any)
counts as one component, the entire imme-
diate data (if
any)
counts
as
one component,
and
all
other bytes of the instruction and prefix(es)
each count
as
one component.