单片机原理单片机指令系统简介.ppt

  1. 1、本文档共80页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机原理单片机指令系统简介

* 无条件转移应用举例: 1)1030H:AJMP 100H ;机器码为2100H 目的地址:PC=1032H的高5位+ 100H的低11位 = 00010 + 001 0000 0000 = 1100H 2)0000H:AJMP 40H ;程序转移到0040H 3)1100H:SJMP 21H ;目标地址为1123H 4)1000H:SJMP NEXT;目的地址NEXT=1020H 则:相对地址rel =1EH(补码数) 5)0060H:SJMP FEH ;踏步指令 目的地址:PC =(PC)+ 2 + FEH = 0060H +2 +FFFEH = 0060H 6)0000H:LJMP 0030H ; * 例3-23:执行下面的散转程序,程序将根据A中的内容(命令编 号0~9)转相应的命令处理程序。 ORG 1000H START: MOV R1, A RL A ;乘2 ADD A, R1 ;完成偏移量A =(A)×3 MOV DPTR,#TABLE ;设定表格首地址 JMP @A+DPRT TABLE: LJMP COMD0 ┇ LJMP COMD9 COMD0: ┇ COMD9: END 由于LJMP占3个字节,因此,变址寄存器必须乘3 * 执行时: 》条件满足时,转移执行; 》条件不满足时,顺序执行; 》条件满足时目的地址:(PC)=(PC)+ 指令字节数 2或3 + rel原码 包括判A、判Bit、判C三种,共有7条: 1)判A转移,2字节 JZ rel ;条件:(A)= 0 JNZ rel ;条件:(A)≠0 2)判Bit转移,3字节 JB bit, rel ;条件:(bit)= 1 JNB bit, rel ;条件:(bit)= 0 JBC bit, rel ;条件:(bit)= 1转移,并清 bit位 3)判C转移,2字节 JC rel ;条件:(C)= 1 JNC rel ;条件:(C)= 0 §3-3 指令系统 -控制转移指令-条件转移指令 * 例3-24 利用P1.0、P1.1作为外接发光二极管的启停按 钮,P1.2作为外接发光二极管端,试编制控制程序。 * 程序如下: START:MOV P1, #03H ;作P1口输入时先置1 WT1: JB P1.0,WT1 SETB P1.2 WT2: JB P1.1,WT2 CLR P1.2 SJMP WT1 * 3、比较不相等转移指令 CJNE A, direct, rel; CJNE A, #data, rel; CJNE Rn, #data, rel; CJNE @Ri, #data, rel; 执行时: 1)两操作数相等,顺序执行,且CY=0。 2)两操作数不相等,转移执行,且对于无符号数若: 第一操作数<第二操作数,CY=1,否则CY清“0”。 目的地址:(PC)=(PC)+ 指令字节数3 + rel §3-3 指令系统 -控制转移指令-比较不相等转移指令 * 例3-24:内部RAM 30H开头的20个 连续单元中,存放有20个数,统计 等于8的单元个数,结果放在R2中。 分析:取一个数与8比较,相等R2 加1,不相等跳过。并作20次重复 即可。 流程如右图,程序如下: ORG 1000H START: MOV R0, #30H MOV R7, #20 MOV R2, #0 LOOP:CJNE @R0,#08H,NEXT INC R2 NEXT: INC R0 DJNZ R7,LOOP SJMP $ * 4、减“1”不为0转移指令 又称循环转移指令,主要用来构成循环结构,有2条: DJNZ Rn, rel ;2字节指令,2周期指令 DJNZ direct,rel ;3字节指令,

文档评论(0)

宝贝计划 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档