Important Notice
The pages on this site contain documentation for very old MS-DOS software,
purely for historical purposes.
If you're looking for up-to-date documentation, particularly for programming,
you should not rely on the information found here, as it will be woefully
out of date.
CALL
◄Summary► ◄Detail► ◄Example► ◄Key to Flags►
──────────────────────────────────────────────────────────────────────────────
Call Procedure Flags: O D I T S Z A P C
═════════════════
Syntax: CALL label
Calls a procedure. The instruction does this by pushing the address of
the next instruction onto the stack and transferring to the address
specified by the operand. For NEAR calls, SP is decreased by 2, the
offset (IP) is pushed, and the new offset is loaded into IP.
For FAR calls, SP is decreased by 2, the segment (CS) is pushed, and
the new segment is loaded into CS. Then SP is decreased by 2
again, the offset (IP) is pushed, and the new offset is loaded into
IP. A subsequent RET instruction can pop the address so that
execution continues with the instruction following the call.
-♦-