第3章 指令系统与编程技术(第4次课).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章 指令系统与编程技术(第4次课)

* 单片机系统设计及工程应用 西安电子科技大学计算机学院 雷思孝 * 第3章 指令系统与编程技术 * 3.3.4 控制转移指令 1.无条件转移指令 (1) 长转移指令 LJMP addr16;(PC)← addr16 (2)绝对移指令 AJMP addr11 ;(PC)←(PC)+2 ;(PC10~0)← a10~0 * (3) 相对转移指令 SJMP rel;(PC)←(PC)+ 2 ;(PC)← (PC)+ rel * (4)散转指令(间接长转移指令) JMP @A+DPTR ;(PC)←(A)+ (DPTR) 执行该指令时, 把累加器 A中的8位无符号数与数据指针中的16位数相加, 结果作为下条指令的地址送入PC, 利用这条指令能实现程序的散转。 ORL P0,#0FFH MOV A,P0 RL A MOV DPTR,#2000H JMP @A+DPTR ORG 2000H AJMP ZY1 ;2000H,2001H AJMP ZY2 ;2002H,2003H AJMP ZY3 ;2004H,2005H AJMP ZY4 ;2006H,2007H AJMP ZY5 ;2008H,2009H AJMP ZY6 ;200AH,200BH AJMP ZY7 ;200CH,200DH AJMP ZY8 ;200EH,200FH 课堂举例 ORG 2100H ZY1: MOV P1,#00H SJMP EXIT ZY2: MOV P1,#01H SJMP EXIT ZY3: MOV P1,#02H SJMP EXIT ZY4: MOV P1,#03H SJMP EXIT ZY5: MOV P1,#04H SJMP EXIT ZY6: MOV P1,#05H SJMP EXIT ZY7: MOV P1,#06H SJMP EXIT ZY8: MOV P1,#07H SJMP EXIT EXIT: SJMP $ * 2. 条件转移指令 JZ rel ;当A=0时跳转,A≠0时则顺序执行下面的指令,即不跳转 JNZ rel ;A≠0 时跳转,A=0时不跳转继续执行程序 * LOOP: MOV A,P1 JZ LOOP CPL A MOV P2,A 课堂举例 * 3. 比较转移指令 CJNE A, direct, rel CJNE A, #data, rel CJNE Rn, #data, rel CJNE @Ri, #data, rel * 例:在内部RAM 30H~4FH单元里查找55H,若有请将地址存在60H,若无请在60H单元写FFH。 课堂练习 * MOV R0,#30H MOV R7,#20H LOOP:MOV A, @R0 CJNE A,#55H, MZD MOV 60H,R0 SJMP NEXT MZD: INC R0 DJNZ R7,LOOP MOV 60H,#0FFH NEXT: SJMP $ MOV R0,#30H MOV R7,#20H LOOP:CJNE @R0,#55H, MZD MOV 60H,R0 SJMP NEXT MZD: INC R0 DJNZ R7,LOOP MOV 60H,#0FFH NEXT: SJMP $ * 4. 减1不为0转移指令 DJNZ Rn, rel DJNZ direct, rel DEC R7 MOV A,R7 JNZ rel * 5. 进位条件转移指令 JC rel ;若Cy=1, 则转移 (PC)←(PC)+2+r JNC rel ;若Cy=0, 则转移(PC)←(PC)+2+rel MOV A,30H RLC A JC FS * 6. 位测试转移指令 JB bit, rel ;若(bit)=1, 则转移(PC)←(PC)+3+rel JNB bit, rel ;若(bit)=0, 则转移(PC)←(PC)+3+rel JBC bit, rel ;若(bit)=1, 则转移(PC)←(PC)+3+rel, 并bit←0 * 7. 调用及返回指令 (1) 长调用指令 LCALL addr16 (2) 绝对调用指令 ACALL addr11 (3) 子程序返回指令 RET (4) 中断返回指令 RETI * 3.3.5 位操作指令 1. 位

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档