334 控制转移类指令 控制转移类指令主要以改变程序计数器

上传人:涵*** 文档编号:202824930 上传时间:2021-10-18 格式:PPT 页数:10 大小:450KB
返回 下载 相关 举报
334 控制转移类指令 控制转移类指令主要以改变程序计数器_第1页
第1页 / 共10页
334 控制转移类指令 控制转移类指令主要以改变程序计数器_第2页
第2页 / 共10页
334 控制转移类指令 控制转移类指令主要以改变程序计数器_第3页
第3页 / 共10页
334 控制转移类指令 控制转移类指令主要以改变程序计数器_第4页
第4页 / 共10页
334 控制转移类指令 控制转移类指令主要以改变程序计数器_第5页
第5页 / 共10页
亲,该文档总共10页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《334 控制转移类指令 控制转移类指令主要以改变程序计数器》由会员分享,可在线阅读,更多相关《334 控制转移类指令 控制转移类指令主要以改变程序计数器(10页珍藏版)》请在金锄头文库上搜索。

1、第3章 AT89C51指令系统 3.3.4 控制转移类指令 控制转移类指令主要以改变程序计数器PC内容为目标,用来控制程序执行的流向。它主要分为以下几类,如表3-4所示。第3章 AT89C51指令系统 表3-4 控制转移类指令第3章 AT89C51指令系统 第3章 AT89C51指令系统 1无条件转移指令 无条件转移指令是指当程序执行到这条指令时,程序将无条件地转移到指令指向的地址单元取指运行。 (1) AJMP为短转移指令。 (2) LJMP为长转移指令。 (3) SJMP为相对转移指令。 (4) “JMP A+DPTR”为间接转移指令,用它可实现分支转移。 第3章 AT89C51指令系统

2、2有条件转移指令 有条件转移指令是指根据指令中给出的条件进行判断,若条件成立,则程序转向指定的目的地址执行,否则顺序执行程序。有条件转移指令的目标地址都在相对于该指令的下一条指令为-128+127的区域内。第3章 AT89C51指令系统 1) 累加器判零指令 JZ指令的功能是判断累加器A的值。若累加器A的值为0,则程序转移到目标地址;否则,顺序执行程序。 JNZ指令的功能是判断累加器A的值。若累加器A的值不为0,则程序转移到目标地址;否则,顺序执行程序。第3章 AT89C51指令系统 2) 比较转移指令 这组比较指令的功能是将目的操作数的内容和源操作数的内容进行比较。若不相等,则程序转移到目标

3、地址;否则,则顺序执行程序。 3) 减1条件转移指令 这组指令的功能是先将操作数的内容减1,然后判断结果。如果不为0,则转移到目标地址;否则,则顺序执行程序。 第3章 AT89C51指令系统 判位转移指令是条件转移指令,它以进位标志CY 或位地址bit的内容为转移的判断条件。JC rel;若( CY)=1,则PC=(PC)+2+ rel, ;否则, PC=(PC)+2JNC rel;若( CY)=0,则PC=(PC)+2+ rel, ;否则, PC=(PC)+2JB bit, rel;若( bit)=1,则PC=(PC)+3+ rel, ;否则, PC=(PC)+3JNB bit, rel;若

4、( bit)=0,则PC=(PC)+3+ rel, ;否则, PC=(PC)+3JBC bit, rel;若( bit)=1,则PC=(PC)+3+ rel, ;且( bit) 0,否则, PC=(PC)+3例3-40第3章 AT89C51指令系统 3空操作指令 执行这条指令除PC内容加1外,不影响任何标志位和其他寄存器。NOP指令常用来产生一个机器周期的延迟。 4调用与返回指令 在程序设计中,有些如延时、显示等具有一定功能的程序在一个系统中常常被多次使用,为了避免重复编写相同功能的程序,使程序编写和调试更加容易,通常把这些具有一定功能的经常被反复使用的程序段作为子程序。 第3章 AT89C51指令系统 1) 短调用指令 ACALL指令的目标地址是11位。在调用子程序时,该指令与AJMP指令类似,要求调用子程序的入口地址与ACALL指令后面指令的第一个字节在同一个2 K页面的程序存储器区域中。 2) 长调用指令 LCALL指令的目标地址是 16位。可在64 K程序存储器区域范围内调用任何一个子程序。 3) 返回指令 RET是子程序返回指令。它使CPU从子程序返回到调用指令的下一条指令。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号