打印

单片机

[复制链接]
1528|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
shmgef|  楼主 | 2012-4-29 13:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
.....
           MOV   A,40H
           MOV   DPTR,#TABLE
           RL      A
           ADD   A,40H
           JMP   @A+DPTR
            ......
TABLE:  LCALL   SUB1
            LCALL    SUB2
            LCALL    SUB3
            .......


大虾能不能帮忙解说这个代码是怎么运行的?
RL  A;                 (A)<--(A)x2
ADD  A,40H        (A)<--(40H)x3
是怎么回事?

相关帖子

沙发
lyjian| | 2012-4-29 14:05 | 只看该作者
RL  A;                 (A)<--(A)x2
*************
A寄存器数据左移一位。此指令执行的结果相当于把移位前的数据x2.
这条指令执行完后A=2倍40H.

2、ADD  A,40H        (A)<--(40H)x3
*************
在执行这条指令前A=2倍40H,再加一次40H,那不就是A=(40H)x3.

使用特权

评论回复
板凳
shmgef|  楼主 | 2012-4-29 20:09 | 只看该作者
为什么程式中要有这两条指令呢?
是因JMP指令吗?
求大虾帮忙解释。。。谢谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

28

主题

65

帖子

0

粉丝