书签 分享 收藏 举报 版权申诉 / 33
上传文档赚钱

类型单片机指令系统[4]课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:5184209
  • 上传时间:2023-02-16
  • 格式:PPT
  • 页数:33
  • 大小:336KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《单片机指令系统[4]课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    单片机 指令系统 课件
    资源描述:

    1、2023-1-29福州大学物理与信息工程学院1 使使PC不再自动增加,强行改变不再自动增加,强行改变PC的内容,的内容,使程序转移到指定的入口地址继续执行,以使程序转移到指定的入口地址继续执行,以实现分枝循环、子程序调用、中断等功能。实现分枝循环、子程序调用、中断等功能。共共17条。条。分类:分类:无条件转移无条件转移 条件转移条件转移 中断中断2023-1-29福州大学物理与信息工程学院2 长转移指令(长跳转)长转移指令(长跳转)LJMP addr16 ;(PC)addr16 3字节字节 转移范围大,转移范围大,0216,即,即64KROM2023-1-29福州大学物理与信息工程学院3 短转

    2、移指令(短跳转、绝对跳转)短转移指令(短跳转、绝对跳转)AJMP addr11 将当前将当前PC值的高值的高5位和位和add11相连相连 PC=PC1511a10a9a8a7a6a5a4a3a2a1a0即将即将add11写入写入PC的第的第010位,位,PC的的1115位不变。位不变。2023-1-29福州大学物理与信息工程学院4 Addr11代表的范围是代表的范围是202112K 64K的的ROM分为分为32页,每页页,每页2K,范围分别是,范围分别是 0000H07FFH、0800H0FFFH、1000H17FFH、F000HF7FFH、F800HFFFFH AJMP转移范围就是转移范围就

    3、是PC当前值所在的当前值所在的2K字节页面内,字节页面内,超出该寻址范围就出错。超出该寻址范围就出错。用于不太长的程序用于不太长的程序 该指令为该指令为2字节字节2023-1-29福州大学物理与信息工程学院5 例:例:机器码机器码 汇编语言汇编语言 07FEH AJMP K11;0800H .0E00H K11:.0F80H K12:.0FFEH AJMP K12 1000H .(PC)=(PC)+2=0800H错误错误(PC)=(PC)+2=1000H K12不在不在1000H17FFH同一页内同一页内2023-1-29福州大学物理与信息工程学院6 相对转移指令相对转移指令 SJMP rel

    4、;PC(PC)+2,PC(PC)+rel 转移范围是当前转移范围是当前PC值值128127范围内范围内2023-1-29福州大学物理与信息工程学院7例:例:0100H80relSJMPAAA0102H00NOP0123H00AAA:NOPrel是一字节的偏移量,编程时通常用目标地址标是一字节的偏移量,编程时通常用目标地址标号代替,如本例中号代替,如本例中AAA,汇编时才计算出偏移量,汇编时才计算出偏移量rel,计算方法计算方法是:是:rel=目标地址目标地址-(本指令地址(本指令地址+02H)=0123H-(0100H+02H)=21H2023-1-29福州大学物理与信息工程学院8 注:注:编

    5、程时,可用标号代替转移目的地址编程时,可用标号代替转移目的地址 AJMP NEXTSJMP NEXTLJMP NEXT 原地踏步指令原地踏步指令 HERE:SJMP HERE 常写成:常写成:SJMP$2023-1-29福州大学物理与信息工程学院9 散转指令:散转指令:JMP A+DPTR(PC)(A)()(DPTR)若若DPTR值固定,改变值固定,改变A的内容,即可形成多个的内容,即可形成多个分枝。分枝。2023-1-29福州大学物理与信息工程学院10例:例:(A)=0 转到转到 PRG0,(A)=1 转到转到 PRG1,.(A)=7 转到转到 PRG7 MOV DPTR,#TABEL RL

    6、 A JMP A+DPTRTABEL:AJMP PRG0 AJMP PRG1 .AJMP PRG72023-1-29福州大学物理与信息工程学院11功能:功能:本质上也是无条件转移指令。本质上也是无条件转移指令。使用:使用:子程序调用子程序调用-程序中反复多次执行的程序中反复多次执行的某一段程序。某一段程序。2023-1-29福州大学物理与信息工程学院12 长调用指令长调用指令LCALL addr16 断点断点PC值进栈保存,调用值进栈保存,调用addr16地址的子地址的子程序。程序。(PC)(PC)+3,(SP)(SP)+1,(SP)(PC70)(SP)(SP)+1,(SP)(PC158)(P

    7、C)addr162023-1-29福州大学物理与信息工程学院13例:例:(SP)=60H,标号STRT值为2100H,标号DIR值为8100H。STRT:LCALL DIR或 STRT:LCALL 2100H 结果:(SP)=62H;(61H)=03H;(62H)=21H;(PC)=8100H2023-1-29福州大学物理与信息工程学院14短调用指令短调用指令ACALL addr11(PC)(PC)+2,(SP)(SP)+1,(SP)(PC70)(SP)(SP)+1,(SP)(PC158)(PC)addr11目的地址与当前目的地址与当前PC值必须位于值必须位于2K范围的同一范围的同一页面内页面

    8、内2023-1-29福州大学物理与信息工程学院15 编程时,可用标号代替转移目的地址,编程时,可用标号代替转移目的地址,addr11,addr16 交给编译程序计算交给编译程序计算 如:如:LCALL DIR;ACALL DIR2023-1-29福州大学物理与信息工程学院16 子程序返回指令子程序返回指令RET 从堆栈中自动取出断点地址送给从堆栈中自动取出断点地址送给PC,使程序在主程序断点处继续执行。使程序在主程序断点处继续执行。(PC158)(SP);(SP)(SP)1(PC70)(SP);(SP)(SP)1 子程序末尾必须是一条返回指令子程序末尾必须是一条返回指令2023-1-29福州大

    9、学物理与信息工程学院17 例:例:(SP)=62H,(62H)=07H;(61H)=30HRET 则则:(SP)=60H;(PC)=0730H2023-1-29福州大学物理与信息工程学院18 中断返回指令中断返回指令RETI 用于中断服务程序末尾用于中断服务程序末尾 除执行除执行RET指令的操作外,还清除中断响应指令的操作外,还清除中断响应时被置位的优先级状态,开放较低级中断和时被置位的优先级状态,开放较低级中断和恢复中断逻辑等功能。恢复中断逻辑等功能。2023-1-29福州大学物理与信息工程学院19 条件转移指令是指当满足某种条件时程序才转移,条件转移指令是指当满足某种条件时程序才转移,而条

    10、件不满足时程序继续执行下一条指令。条件而条件不满足时程序继续执行下一条指令。条件主要指主要指PSW中的标志。中的标志。注注:对对PSW的按位操作也将影响相应的标志位。的按位操作也将影响相应的标志位。任何一条改变累加器任何一条改变累加器A的内容的指令都将影响的内容的指令都将影响P标志。标志。8051单片机隐含一个零标志位单片机隐含一个零标志位(Z),当,当(A)=0时,时,Z置置“1”。2023-1-29福州大学物理与信息工程学院20 A判零转移指令判零转移指令 JZ rel;(A)=0时转移,(PC)(PC)+2+rel否则程序顺序执行(PC)(PC)+2 JNZ rel;(A)=1时转移,(

    11、PC)(PC)+2+rel否则程序顺序执行(PC)(PC)+22023-1-29福州大学物理与信息工程学院21例例1、将外、将外RAM的一个数据块(首地址为的一个数据块(首地址为DATA1)传送到内部数据传送到内部数据RAM(首地址为(首地址为DATA2),遇到),遇到传送的数据为零时停止传送,试编程。传送的数据为零时停止传送,试编程。解:解:MOV R0,#DATA2 MOV DPTR,#DATA1 MOVX A,DPTR JZ LOOP2 MOV R0,A INC R0 INC DPTR SJMP LOOP1LOOP2:SJMP LOOP2LOOP1:2023-1-29福州大学物理与信息工

    12、程学院22 比较转移指令:比较转移指令:比较指令中两个操作数的值是否相等,若值比较指令中两个操作数的值是否相等,若值不等,则转移;若相等则顺序执行。不等,则转移;若相等则顺序执行。同时影响同时影响CY标志位,若第一操作数标志位,若第一操作数右操作数,则转移右操作数,则转移(PC)(PC)+3+rel,同时,同时(CY)=0 若左操作数若左操作数右操作数,则转移右操作数,则转移(PC)(PC)+3+rel,同时,同时(CY)=1 也用于数值比较,以也用于数值比较,以CY状态判断数值大小。状态判断数值大小。CJNE 操作数操作数1,操作数操作数2,转移地址标号转移地址标号2023-1-29福州大学

    13、物理与信息工程学院25例如例如:CJNEA,30H,NOTEQ;3分支转移分支转移MOVA,R0;(A)(30H)AJMPWORKNOTEQ:JCLITTER;(A)(30H),转MOVA,R1ACALLSUBLITTER:XXXXWORK:2023-1-29福州大学物理与信息工程学院26 减减1非零转移指令非零转移指令DJNZ Rn,rel ;(Rn)(Rn)1,若(Rn)0则转移,(PC)(PC)+2+rel;若(Rn)0则顺序执行(PC)(PC)+2DJNZ direct,rel ;(direct)(direct)1,若(direct)0则转移,(PC)(PC)+2+rel;若(dire

    14、ct)0则顺序执行(PC)(PC)+22023-1-29福州大学物理与信息工程学院27 主要用于控制程序循环,先把主要用于控制程序循环,先把Rn或或direct赋值循环次数,利用减赋值循环次数,利用减1条件转条件转移指令,以减移指令,以减1后是否为后是否为0作为转移条作为转移条件,即可实现按次数控制循环。件,即可实现按次数控制循环。2023-1-29福州大学物理与信息工程学院28例:例:延时延时50ms程序程序 DELY:MOV R7,#200 MOV R6,#125 DEL2:DJNZ R6,DEL2;125*2=250us DJNZ R7,DEL1;0.25ms*20050ms RET 使

    15、用使用12MHz晶振时,一个机器周期为晶振时,一个机器周期为1us,执行执行DJNZ指令为指令为2us,加其他指令的时间,加其他指令的时间 (25012)*200150.301ms 使用例:使用例:ACALL DELY 或或 LCALL DELY DEL1:2023-1-29福州大学物理与信息工程学院29JC rel ;(Cy)=1则转移,(PC)(PC)+2+rel 否则,程序继续执行,(PC)(PC)+2JNC rel ;(Cy)=0则转移,(PC)(PC)+2+rel 否则,程序继续执行,(PC)(PC)+2 布尔累加器布尔累加器(进位位进位位)判位转移。判位转移。2023-1-29福州

    16、大学物理与信息工程学院30 例例:比较内部比较内部RAM的的30H和和40H单元中的二个无符单元中的二个无符号数的大小,将大数存入号数的大小,将大数存入20H单元,小数存入单元,小数存入21H单单元,若二数相等,则使内元,若二数相等,则使内RAM的第的第127位置位置1。解:解:MOV A,30H CJNE A,40H,LOOP1 SETB 7FH SJMP$LOOP1:JC LOOP2 MOV 20H,A MOV 21H,40H SJMP$LOOP2:MOV 20H,40H MOV 21H,A SJMP$2023-1-29福州大学物理与信息工程学院31JB bit,rel ;(bit)=1则

    17、转移,(PC)(PC)+3+rel 否则,程序继续执行,(PC)(PC)+3JNB bit,rel;(bit)=0则转移,(PC)(PC)+3+rel 否则,程序继续执行,(PC)(PC)+3JBC bit,rel;(bit)=1则转移,(PC)(PC)+3+rel,且且(bit)=0 否则,程序继续执行,(PC)(PC)+3 普通数据位判位转移普通数据位判位转移2023-1-29福州大学物理与信息工程学院32 试判断试判断A中的正负,若为正数,存入中的正负,若为正数,存入20H单元;单元;若为负数则存入若为负数则存入21H单元。单元。解:解:JB ACC.7,LOOP MOV 20H,A SJMP$LOOP:MOV 21H,A SJMP$2023-1-29福州大学物理与信息工程学院33NOP 1字节,单周期字节,单周期 该指令仅使该指令仅使(PC)+1然后继续执行下一条然后继续执行下一条指令,无任何操作。指令,无任何操作。常用于延时或程序中作为时间常用于延时或程序中作为时间“微调微调”

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:单片机指令系统[4]课件.ppt
    链接地址:https://www.163wenku.com/p-5184209.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库