call指令
call指令是计算机转移到调用的子程序。
基本信息
- 中文名称
call指令
- 操作
转移到调用的子程序
- 调用
LCALL远调用
- 学科
计算机
基本内容
CALL(LCALL)指令执行时,进行两步操作:
(1)将程序下一条指令的位置的IP压入堆栈中;
(2)转移到调用的子程序。
(CALL近调用,LCALL远调用,
CALL 寻址2K空间范围
LCALL 寻址64K空间范围) 先压CS,再压IP!
CALL与RET结合使用,当CALL调用的子程序运行到RET命令时,压入堆栈的IP弹出,跳出子程序,开始执行CALL的下一条语句。
例:
main: setb p1.0;
lcall delay;
clr p1.0;
lcall delay;
ajmp main;
delay: mov r7,#250;
d1: mov r6,#250;
d2:djnzr6,d2;
djnzr7,d1;
ret ;