User's Manual

THE
80286
INSTRUCTION SET
JMP-Jump
Opcode Instruction
Clocks'
Description
EB
cb JMP cb 7 Jump short
EA
cd JMP cd
180
Jump to.task gate
E9
cw
JMP
cw
7
Jump near
EA
cd JMP cd
11,pm=23
Jump far (4-byte immediate address)
EA
cd JMP
cd
38
Jump to
call
gate, same privilege
EA
cd
JMP
cd
175
Jump
via
Task State Segment
FF
/4
JMP
ew 7,mem=11 Jump near to
EA
word
(absolute offset)
FF
/5
JMP
ed 15,pm=26 Jump
far
(4-byte effective address
in
memory
doubleword)
FF
/5
JMP
ed
41
Jump to
call
gate, same privilege
FF
/5
JMP
ed
178
Jump
via
Task State Segment
FF
/5
JMP
ed
183 Jump to task gate
'Add one
clock
for
every byte
of
the next instruction executed.
FLAGS MODIFIED
All if a task switch takes place; none if
no
task switch occurs.
FLAGS UNDEFINED
None
OPERATION
The
JMP
instruction transfers program control to a different instruction stream without recording any
return information.
For inter-segment jumps, the destination can be a code segment, a call gate, a task gate, or a Task
State Segment. The latter two destinations cause a complete task switch to take place.
Control transfers within a segment use the
JMP
cw
or
JMP
cb forms. The operand
is
a relative offset
added modulo 65536 to the offset of the instruction that follows the
JMP. The result
is
the
new
value
of
IP; the value of CS
is
unchanged. The byte operand
is
sign-extended before it
is
added; it can
therefore be used to address labels within
128
bytes in either direction from the next instruction.
Indirect jumps within a segment use the
JMP
ew form. The contents of the register or memory operand
is
an absolute offset, which becomes the
new
value of IP. Again, CS
is
unchanged.
Inter-segment jumps in real address mode simpiy set
IP
to
tile offset part of inl:
iOIl!;;
poilii,;;r
..
iid
,,;;
..
CS
to the selector part of the pointer.
In protected mode, inter-segment jumps cause the 80286 to consult the descriptor addressed by the
selector part of the long pointer. The
AR
byte of the descriptor determines the type of the destination.
(See table
B-3
for possible values of the
AR
byte.) Following are the possible destinations:
1.
Code
segment-The
addressability and visibility of the destination are verified, and CS and IP
are loaded with the destination pointer values.
B-56