×
单片机 > 单片机程序设计 > 详情

8051单片机指令定义详解——ACALL addr11(1)

发布时间:2020-08-31 发布时间:
|
8051单片机指令定义详解——(ACALL addr11)

符号说明


符  号                            说 


←                                  表示数据传送方向

()                                   表示单元的内容

(())                                表示间接寻址的内容

rrr                                  8个工作寄存器之一;000=R0,001=R1等

dddddddd                      数据位

aaaaaaaa                      地址位

bbbbbbbb                      表示某个位的地址

                                  通过R0(i=0)或R1(i=1)间接寻址

eeeeeeee                     8位的相对地址偏移量


 

ACALL  addr11


功能:绝对调用。

说明:ACALL指令实现无条件调用位于addr11参数所表示地址的子例程。在执行该指令时,首先将PC的值增加2,即使得PC指向ACALL的下一条指令,然后把16位PC的低8位和高8位依次压入栈,同时把栈指针两次加1.然后,把当前PC值的高5位、ACALL指令第一字节的7~5位和第2字节组合起来,得到一个16位目的地址,该地址即为即将调用的子例程的入口地址。要求该子例程的起始地址必须与紧随ACALL之后的指令处于同1个2KB的程序存储页中。ACALL指令在执行时不会改变各个标志位。

示例:SP的初始值为07H,标号SUBRTN位于程序存储器的0345H地址处,如果执行位于地址0123H处的指令:

ACALL          SUBRTN

那么SP变为09H,内部RAM地址08H和09H单元的内容分别为25H和01H,PC值变为0345H。

指令长度(字节数): 2

    指令执行周期: 2

  指令二进制编码: aaa10001aaaaaaaa

注意:aaa是11位目标地址addr11的A10~A8位,aaaaaaaa是addr11的A7~A0位。

指令的操作:

(PC)←(PC)+2

(SP)←(SP)+1

((SP))←(PC7—PC0)

(SP)←(SP)+1

((SP))←(PC15—PC8)

(PC10—PC0)←页面地址

关键字:8051  单片机指令  定义详解 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
浅谈AVR中定时器几种工作模式