找回密码
 注册
关于网站域名变更的通知
查看: 357|回复: 1
打印 上一主题 下一主题

控制转移指令

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-3-12 09:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
控制转移指令& E1 \$ ^! z$ O; y! d& q6 z3 Z

4 E. P) R! Q* U
( y% s: F& x' O7 k% Z9 D8 J  o' p" K

控制转移类指令

计算机运行过程中,有时因为操作的需要,程序不能按顺序逐条执行指令,需要改变程序运行方向,即将程序跳转到某个指定的地址再顺序执行下去。

控制转移类指令的功能就是根据要求修改程序计数器PC的内容,以改变程序运行方向,实现转移。

控制转移类指令可分为:无条件转移、条件转移、绝对转移、相对转移和调用、返回指令。下面我们将分类介绍。

1.无条件转移指令(4条)

LJMP   add16           ;add16→PC,无条件跳转到add16地址,可在64KB范围内

转移,称为长转移指令

AJMP   add11          ;add11→PC,无条件转向add11地址,在2KB范围内转移

SJMP   rel           ;PC+2+rel→PC,相对转移,rel是偏移量,8 位有符号

数,范围-128~127,即可向后跳转128,向前可跳转127

JMP    @A+DPTR         ;A+DPTR→PC ,属散转指令,无条件转向A与DPTR内容相

加后形成的新地址

例1  执行指令

LJMP   9100H

不管这条指令存放在哪里,执行时将使程序转移到9100H,和AJMP,SJMP指令是有差别的。

例2  程序

2000H   MOV   R0 , #10H  ;10H→PC

2002H   SJMP  03H   ;PC+2+rel=2002H+2+03H=2007H→PC

┇        ┇

2006H     ┇

2007H     ┇

从说明中可见,执行SJMP  03H 指令后,马上跳转到2007H地址执行程序。

游客,如果您要查看本帖隐藏内容请回复

% |" ]% d2 h/ e% T2 a+ X: V
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-21 23:51 , Processed in 0.078125 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表