单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编控制转移类指令.ppt

单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编控制转移类指令.ppt

ID:50471628

大小:266.50 KB

页数:24页

时间:2020-03-09

单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编控制转移类指令.ppt_第1页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编控制转移类指令.ppt_第2页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编控制转移类指令.ppt_第3页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编控制转移类指令.ppt_第4页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编控制转移类指令.ppt_第5页
资源描述:

《单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编控制转移类指令.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、3.3.5控制转移类指令1.无条件转移指令(4条)a.相对转移指令(1条)SJMPb.长跳转指令(1条)LJMPc.短跳转指令(1条)AJMPd.间接转移指令(1条)JMP2.子程序调用和返回指令(4条)a.调用指令(2条)ACALLLCALLb.返回指令(2条)RETRETI3.空操作指令(1条)NOP4.条件转移指令(13条)a.判C转移指令(2条)JCJNCb.判bit转移指令(3条)JBJNBJBCc.判A转移指令(2条)JZJNZd.减1非0则转移指令(2条)DJNZ两种形式e.比较不相等则转移指令(

2、4条)CJNE四种形式一.无条件转移指令(4条)1.长跳转指令LJMP(3字节)LJMPaddr16;PCaddr16执行该指令时,将目标语句的16位地址addr16装入PC,程序无条件转向指定的目标语句执行。由于长跳转指令提供的是16位地址,对应64KB的程序存储器地址空间,所以可跳转到64KB程序存储器地址空间的任何地方。实际应用中长跳转汇编指令写作“LJMP目标语句标号”的形式,如“LJMPLOOP”。2.短跳转指令AJMP(2字节)AJMPaddr11;PC10~0addr11这是2KB范围内的无条

3、件跳转指令。执行该指令时,将目标语句的低11位地址送入PC的低11位,而PC的高5位保持不变,这样得到跳转的目的地址。实际应用中短跳转汇编指令写作“AJMP目标语句标号”的形式,如“AJMPLOOP”。注意:目标地址与AJMP后面一条指令必须在同一个2KB区域。表3-2所示为ROM空间中32个2KB区间。表3-2ROM空间中的32个2KB区间3.相对转移指令SJMP(2字节)SJMPrel;PCPC+2+rel执行该指令时,先将(PC)+2,再把指令中带符号的偏移量加到PC上,得到跳转的目标地址送入PC。re

4、l为相对偏移量,是有符号8位二进制数(补码形式),取值范围为+127~-128(00H~7FH对应表示0~+127,80H~FFH对应表示-128~-1)。负数表示反向转移,正数表示正向转移。实际应用中SJMP的汇编指令写作“SJMP目标语句标号”的形式,如“SJMPLOOP”。由汇编程序在汇编过程中自动计算偏移地址rel。4.间接转移指令JMP(1字节)JMP@A+DPTR;PC(A)+(DPTR)本指令可代替众多的判别跳转指令,又称为散转指令,多用于多分支程序结构中。跳转的目标地址不是由标号简单地决定,而

5、是累加器A和数据指针DPTR之和,它可以是64KB存储空间的任何地方。指令对A、DPTR和标志位均无影响。注意:以上四条指令结果均不影响程序状态字寄存器PSW。5.LJMP、AJMP、SJMP、JMP四条无条件转移指令的区别:(1)转移范围不一样。LJMP、JMP转移范围是64KB;AJMP转移范围是与当前PC值同一个2KB区间;SJMP转移范围是相对当前PC值的-128B~+127B范围内。(2)指令长短不一样。LJMP是3字节指令;AJMP、SJMP是2字节指令;JMP是1字节指令。(3)指令机器码构成不同

6、。AJMP、LJMP、JMP后跟的是绝对地址,而SJMP后跟的是相对地址。(4)地址特点不同。LJMP、AJMP、SJMP的转移目标地址是固定的,程序执行过程中不变;JMP的转移目标地址随程序的执行是动态变化的。(5)原则上,所有用SJMP或AJMP的地方都可以用LJMP来替代。二.条件转移指令(13条)条件转移指令是指在满足一定条件时进行相对转移,程序跳转到目标地址执行;否则程序继续执行本指令的下一条指令。转移的目标指令首地址必须在以下一条指令的起始地址为中心的256个字节范围之内(-128~+127),否则

7、汇编出错,无法执行。当条件满足时,PC←(PC)+N+rel,其中(PC)为条件转移指令(机器指令)的第一个字节的地址,N为该转移指令的字节数(长度)。条件转移指令根据判断条件可分为:a.判C转移指令(2条)JCJNCb.判bit转移指令(3条)JBJNBJBCc.判A转移指令(2条)JZJNZd.减1非0则转移指令(2条)DJNZ两种形式e.比较不相等则转移指令(4条)CJNE四种形式1.判C转移指令(2条)(1)(CY)=1则转移指令JCrel指令功能:若(CY)=1,则PC←(PC)+rel,转移;若(C

8、Y)=0,则程序顺序执行。实际应用中JC的汇编指令写作“JC目标语句标号”的形式,如“JCLOOP”。(2)(CY)=0则转移指令JNCrel指令功能:若(CY)=0,则PC←(PC)+rel,转移;若(CY)=1,则程序顺序执行。2.判bit转移指令(3条)(1)(bit)=1则转移指令JBbit,rel指令功能:若(bit)=1,则PC←(PC)+rel,转移;若(bit)=0,则

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。