CALL指令用于调用子例程。子例程通常用于执行需要经常执行的任务。 JMP指令用于使PLC(可编程逻辑控制)跳过梯级。
CALL和JUMP指令之间的区别是:
SERIAL NO. | JUMP | CALL |
---|---|---|
1. | Program control is transferred to a memory location which is in the main program | Program Control is transferred to a memory location which is not a part of main program |
2. | Immediate Addressing Mode | Immediate Addressing Mode + Register Indirect Addressing Mode |
3. | Initialisation of SP(Stack Pointer) is not mandatory | Initialisation of SP(Stack Pointer) is mandatory |
4. | Value of Program Counter(PC) is not transferred to stack | Value of Program Counter(PC) is transferred to stack |
5. | After JUMP, there is no return instruction | After CALL, there is a return instruction |
6. | Value of SP does not changes | Value of SP is decremented by 2 |
7. | 10 T states are required to execute this instruction | 18 T states are required to execute this instruction |
8. | 3 Machine cycles are required to execute this instruction | 5 Machine cycles are required to execute this instruction |