当前位置:首页 > 单片机 > 单片机
[导读]LCALLaddr16;长调用ACALLaddr11;绝对调用1.LCALLaddr16;转移范围64KB,不影响标志位。执行中自动完成如下过程:(PC)(PC)+ 3(SP)(SP)+ 1((SP))(PC7 ~ 0), 保护断点地址低字节;(SP)(SP)+ 2((

LCALLaddr16;长调用

ACALLaddr11;绝对调用

1.LCALLaddr16;转移范围64KB,不影响标志位。执行中自动完成如下过程:


(PC)(PC)+ 3


(SP)(SP)+ 1


((SP))(PC7 ~ 0), 保护断点地址低字节;

(SP)(SP)+ 2

((SP))(PC15 ~ 8),保存断点地址高字节;

(PC)addr16,目的地址送PC,转子程序。

例、设(SP)= 07H,(PC)= 2100H,子程序首地址为3456H,执行:


LCALL3456H

MOVA,20H

??????

画出执行过程示意图。

执行结果:(SP)= 09H,(09H)= 21H,(08H)= 03H,(PC)= 3456H


2.ACALLaddr11;转移范围与(PC)+ 2在同一个2KB内。不影响任何标志位,执行中机器自动完成下列过程:


(PC)(PC)+ 2


(SP)(SP)+ 1

((SP))(PC7 ~ 0)

(SP)(SP)+ 2

((SP))(PC15 ~ 8)


(PC10 ~ 0)addr10 ~ 0


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭