Intel 80C186EA User Manual page 53

Hide thumbs Also See for 80C186EA:
Table of Contents

Advertisement

OVERVIEW OF THE 80C186 FAMILY ARCHITECTURE
Unconditional transfer instructions can transfer control either to a target instruction within the
current code segment (intrasegment transfer) or to a different code segment (intersegment trans-
fer). The assembler terms an intrasegment transfer SHORT or NEAR and an intersegment trans-
fer FAR. The transfer is made unconditionally when the instruction is executed. CALL, RET and
JMP are all unconditional transfers.
CALL is used to transfer the program to a procedure. A CALL can be NEAR or FAR. A NEAR
CALL stacks only the Instruction Pointer, while a FAR CALL stacks both the Instruction Pointer
and the Code Segment register. The RET instruction uses the information pushed onto the stack
to determine where to return when the procedure finishes. Note that the RET and CALL instruc-
tions must be the same type. This can be a problem when the CALL and RET instructions are in
separately assembled programs. The JMP instruction does not push any information onto the
stack. A JMP instruction can be NEAR or FAR.
Conditional transfer instructions are jumps that may or may not transfer control, depending on
the state of the CPU flags when the instruction is executed. Each conditional transfer instruction
tests a different combination of flags for a condition (see Table 2-10). If the condition is logically
TRUE, control is transferred to the target specified in the instruction. If the condition is FALSE,
control passes to the instruction following the conditional jump. All conditional jumps are
SHORT. The target must be in the current code segment within –128 to +127 bytes of the next
instruction's first byte. For example, JMP 00H causes a jump to the first byte of the next instruc-
tion. Jumps are made by adding the relative displacement of the target to the Instruction Pointer.
All conditional jumps are self-relative and are appropriate for position-independent routines.
2-24

Advertisement

Table of Contents
loading

This manual is also suitable for:

80c188ea

Table of Contents