51单片机中LCALL是什么意思
展开全部
51单片机中LCALL意思是长调用指令,可以调用64kb范围内程序存储器中的任何一个子程序。
执行过程是先把程序计数器pc加3获得下条指令的地址(也就是断点地址),并把它压入堆栈(先低八位后高八位),同时把堆栈指针加2。接着把指令的第二个和第三个字节(A15-A8,A7-A0)分别装入pc的高位和低位中,然后从pc中指出的地址开始执行程序。
扩展资料:
在调用函数时,也即当执行LCALL、ACALL等汇编指令时,随着函数调用链条不断加长,SP指向的系统栈被占用的空间越来越多。PC不可寻址,无法用程序出入栈,只能由硬件自动完成。但指令执行后不影响任何标志。
PC存放的是下一条要执行的指令,在调用子函数前,要把紧跟ACALL/LCALL指令后面的一条指令的ROM地址入栈,因为LCALL本身占用3字节。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询