51单片机学习资料.ppt

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

(三)逻辑运算及移位类指令(5种/24条) —— P.61 逻辑与运算: (ANL——6条) 逻辑或运算: (ORL——6条) 逻辑异或运算: (XRL——6条) 累加器清零/取反: (CLR,CPL——2条) 累加器移位操作: (RL,RLC,RR,RRC—4条) 逻辑运算及移位类指令(续) P.61 逻辑与(ANL),逻辑或(ORL),逻辑异或(XRL): 累加器清零/取反操作 (CLR,CPL——2条) CLR A ——对累加器清零 1 Byte 1 个Tm CPL A ——对累加器按位取非 1 Byte 1 个Tm 1 1 ANL(ORL,XRL) A, Rn 1 1 ANL(ORL,XRL) A, @Ri 1 2 ANL(ORL,XRL) A, direct 1 2 ANL(ORL,XRL) A, #data 2 3 ANL(ORL,XRL) direct,#data 1 2 ANL(ORL,XRL) direct, A Tm Byte 指 令 形 式 逻辑运算指令的常见用法 逻辑与ANL用于清0或者保留某些位: 例: ANL A, #0FH; 则(A) = 0AH ( 已知累加器A中已存有数:9AH ) 逻辑或ORL用于置1或者保留某些位: 例: ORL A, #0FH; 则(A) = 9FH 逻辑异或XRL用于取反或者保留某些位: 例: XRL A, #0FH; 则(A) = 95H (A) ? 1001 1010 #0FH ? 0000 1111 95H ? 1001 0101 逻辑运算及移位类指令(续) P.64 累加器移位操作:(RL,RLC,RR,RRC——4条) RL A 左环移 累加器 A 累加器 A Cy 累加器 A Cy 累加器 A RRC A 带进位位右环移 RR A 右环移 RLC A 带进位位左环移 (四)控制转移类指令(4种/17条) P.65 此类指令改变程序的执行顺序——改变当前PC值 无条件转移: (LJMP,AJMP,SJMP,JMP——4条) 条件转移(判断跳转): (JZ,JNZ,CJNE,DJNZ——8条) 子程序调用及返回: (LCALL,ACALL,RET,RETI——4条) 空操作: (NOP——1条) “耗时”一个机器周期。 do nothing! 控制转移类指令(续) P.65-67 无条件转移: LJMP,AJMP,SJMP,JMP——4条 LJMP addr16 长跳转指令 ——可在64K范围内跳转 AJMP addr11 绝对跳转指令 ——可在指令所在的2K范围内跳转 SJMP rel 相对跳转指令 ——可在当前PC-128与+127范围内跳转 JMP @A+DPTR 间接长跳转指令 ——可在以DPTR为基址 + A为偏移量 之和所指向的64K程序范围内跳转 控制转移类指令(续) P.67-69 条件转移: JZ,JNZ,CJNE,DJNZ——8条 JZ rel JNZ rel ——根据Acc的内容是否为0决定是否跳转 DJNZ direct,rel DJNZ Rn, rel ——将direct(或Rn)里的内容减 1,结果不等于0就跳转;等于0则不跳转继续往下走。 条件转移(续) CJNE A, #data, rel CJNE A, direct,rel CJNE @Ri,#data, rel CJNE Rn, #data, rel ——将A(或@Ri,或Rn)与#data(或direct)相比较,其值不相等就跳转;相等则不跳转,继续往下走。 控制转移类指令(续) P.70 LCALL addr16 子程序长调用指令 ——可在64K范围内调用子程序 子程序调用及返回: (LCALL,ACALL,RET,RETI——4条)

文档评论(0)

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

1亿VIP精品文档

相关文档