微机控制系统与应用3讲义.pptVIP

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 寻址方式与指令系统 3.1 MCS-51单片机的寻址方式 3.2 指令系统简介 3.3 伪指令 3.4.程序设计举例 六、逻辑运算类指令小结 (1)逻辑运算的所有指令都是按位进行操作的。 (2)逻辑与、或、异或运算三组指令各有6条,都采用了相同种类的寻址方式,4条是以A为目的操作数,两条以直接地址为目的操作数,便于对各个内部RAM单元和SFR的内容进行逻辑运算。 (3)MCS-5l没有求补指令,若要进行求补操作,可按“取反加1”来进行。 (4)除了带进位的左右移位指令会影响CY标志位之外,所有的逻辑运算指令都不影响PSW。 3.2 指令系统简介 * * 3.2 指令系统简介 逻辑运算类指令举例 例1.将内部RAM中30H单元的内容取补码,并存入30H单元。 MCOD: MOV A, 30H ;取30H单元内数据 CPL A ;将该数取反 INC A ;加1 MOV 30H, A ;将原数据的补码存回30H单元 * 3.2 指令系统简介 例2.双字节数移位。将R2、R3中的一个双字节数左移一位,最低位补零,最高位存CY中,假设R2中为高字节,R3中为低字节。 RL16: CLR C ;清进位标志位 MOV A, R3 ;将低字节放入A中 RLC A ;低字节左移一位,高位进入CY,最低位补零 MOV R3, A ;低字节移位后存入R3 MOV A, R2 ;将高字节放入A中 RLC A ;高字节左移一位,CY进入最低位,高位进入CY MOV R2, A ;高字节移位后存入R2 3.2.4 控制转移类指令 3.2 指令系统简介 * MCS-51的控制转移指令共有17条,完成程序流程的跳转操作。 一、无条件转移指令(4条) 1.长转移指令 LJMP addrl6 ; PC←addrl6 长转移指令把16位地址传送给PC,实现程序在64KB程序存储器范围内跳转。三字节指令。 2.绝对转移指令 AJMP addr11 ; PC←PC+2, PC10~0←addr11 绝对转移指令先将PC的内容加2,使PC指向本指令的下一条指令,然后把addr11送入PC的低11位,PC的高5位保持不变,形成新的PC值,实现程序的转移。本指令的转移范围为下一条指令地址所在2K页面之内。二字节指令。 3.2 指令系统简介 * 3.短转移指令 SJMP rel ; PC←PC+2+rel 短转移指令首先将PC内容加2(本指令长度为两字节),再与rel相加形成转移目的地址,其中rel是8位的补码表示的相对偏移量。短转移指令的转移范围是以本指令所在地址加2为基准,向低地址转移128B,向高地址转移127B。二字节指令。 4.变址寻址转移指令 JMP @A+DPTR ; PC←((A)+(DPTR)) 变址寻址转移指令是将累加器A的值与DPTR中的值相加所得的和装入PC中,完成程序的转移。本指令常用于跳转表以实现多分支转移。 * 3.2 指令系统简介 MOV DPTR,#TAB ; 将TAB所代表的地址送入DPTR MOV A,R0; 从R0中取数 MOV B,#2 MUL AB ; A中的值乘2 JMP @A+DPTR ; 跳转 TAB: AJMP S1 ; 跳转表格 AJMP S2 AJMP S3 …… 3.2 指令系统简介 * 二、条件转移指令(8条) 条件转移指令是指当某种条件满足时转移进行,否则程序顺序执行。 1.累加器判零条件转移指令 JZ rel ; A=0, PC←PC+2+rel; A≠0, PC←PC+2 JNZ rel ; A≠0, PC←PC+2+rel; A=0, PC←PC+2 例: MOV A, R0 JZ L1 MOV R1, #00H AJMP L2 L1: MOV R1, #0FFH L2: SJMP L2 3.2 指令系统简介 * 2.比较条件转移指令 CJNE A, #data, rel CJNE A, direct, rel CJNE Rn, #data, re1 CJNE @Ri, #data, rel 这4条指令都是三字节指令, 都执行以下操作: (1)若目的操作数=源操作数, 则 PC←PC+3 , CY=0 (2)若目的操作数>源操作数, 则 PC←PC+3+rel , CY=0

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档