Procedure Call
Pushes Instruction Pointer (and Code Segment for far calls) onto stack and loads Instruction Pointer with the address of proc-name.
Code continues with execution at CS:IP.
This instruction can be used to execute four different types of calls:
- Near call -a call to a procedure within the current code segment;
- Far call -a call to a procedure located in a different segment than the current
code segment;
- Inter-privilege-level far call -a far call to a procedure in a segment at a different privilege level than that of the currently executing program or procedure.
- Task switch -A call to a procedure located in a different task.