《单片机讲义讲》PPT课件.ppt

《单片机讲义讲》PPT课件.ppt

ID:52073630

大小:553.50 KB

页数:33页

时间:2020-03-31

《单片机讲义讲》PPT课件.ppt_第1页
《单片机讲义讲》PPT课件.ppt_第2页
《单片机讲义讲》PPT课件.ppt_第3页
《单片机讲义讲》PPT课件.ppt_第4页
《单片机讲义讲》PPT课件.ppt_第5页
资源描述:

《《单片机讲义讲》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机原理与应用第七讲主要内容第3章AT89C51指令系统1.3.3.3逻辑操作与移位指令2.3.3.4控制转移类指令3.3.3.5位操作类指令13.3.3逻辑操作与移位指令这类指令主要包括与、或、异或、求反、清零、移位等操作指令。逻辑操作与移位指令如表3-3(略)所示。共有24条,按参与运算的操作数的个数可分为:单操作数逻辑运算和双操作数逻辑运算两大类。下面分别予以介绍21.逻辑与指令“与”指令是将源操作数与目的操作数按位相与,其结果送入目的操作数中。“与”指令可以屏蔽操作数的某些位,即使操作数某些位清零,其他位保持不变。这类指令的助记符为ANL,共有6条

2、ANLA,RnANLA,directANLA,@RiANLA,#dataANLdirect,AANLdirect,#data例:设(A)=0A3H,(R0)=0F0HANLA,R0结果(A)=0A0H;A的低四位清零32.逻辑或指令“或”指令是将源操作数与目的操作数按位相或,其结果送入目的操作数中。“或”指令可以使操作数的数据位置1,即使操作数某些位置1,其他位保持不变。这类指令的助记符为ORL,共有6条ORLA,RnORLA,directORLA,@RiORLA,#dataORLdirect,AORLdirect,#data例:设(A)=52HORLA,#

3、0FH结果(A)=5FH;逻辑或指令用做置位43.逻辑异或指令“异或”指令是将源操作数与目的操作数按位相异或,即不同为1,相同为0,其结果送入目的操作数。“异或”指令可以使操作数的数据位取反,即使操作数某些位取反,其他位保持不变。这类指令的助记符为XRL,共有6条XRLA,RnXRLA,directXRLA,@RiXRLA,#dataXRLdirect,AXRLdirect,#data例1:设(A)=5FHXRLA,#0FH;(A)=50H例1:设(A)=5FH(R7)=5FHXRLA,R7;(A)=00H54.累加器清零与取反,是单字节指令CLRA;   

4、机器码E4H指令功能是将累加器A的内容清零。CPLA;机器码F4H指令功能是将累加器A的内容按位取反,即累加器A中各位1变0,0变1。例(A)=55HCPLA;(A)=0AAHCLRA;(A)=00H上面介绍了逻辑类运算指令,逻辑指令特点是按位进行65.移位指令AT89C51移位指令有四种,都是对累加器A进行操作。这组移位指令只能对操作数移一位,若要移多位,则要通过编写程序完成。7图3-4左循环移位指令示意图RLA(1)RLA的指令功能是将累加器A的内容左循环移位。如图3-4所示,累加器A的最高位移入最低位,同时其他各位依次左移。8图3-5带进位左循环移位指

5、令示意图RLCA(2)RLCA的指令功能是将累加器A的内容和进位标志一起左循环移位。如图3-5所示,累加器A的最高位移入进位位CY,同时其他各位依次左移,CY位移入累加器A的最低位。9图3-6右循环移位指令示意图RRA(3)RRA的指令功能是将累加器A的内容右循环移位。如图3-6所示,累加器A的最低位移入最高位,同时其他各位依次右移。10图3-7带进位右循环移位指令示意图RRCA(4)RRCA的指令功能是将累加器A的内容和进位标志一起右循环移位。如图3-7所示,累加器A的最低位移入进位位CY,同时其他各位依次右移,CY位移入累加器A的最高位。113.3.4控

6、制转移类指令控制转移类指令主要以改变程序计数器PC内容为目标,用来控制程序执行的流向。它主要分为以下几类,如表3-4所示。12表3-4控制转移类指令13141.无条件转移指令无条件转移指令是指当程序执行到这条指令时,程序将无条件地转移到指令指向的地址单元取指运行。(1)AJMP为短转移指令。2k(2)LJMP为长转移指令。64K(3)SJMP为相对转移指令。(-128~+127)(4)“JMP@A+DPTR”为间接转移指令,用它可实现分支转移。64K注意:转移范围152.有条件转移指令有条件转移指令是指根据指令中给出的条件进行判断,若条件成立,则程序转向指定

7、的目的地址执行,否则顺序执行程序。有条件转移指令的目标地址都在相对于该指令的下一条指令为-128~+127的区域内这类指令共有6条JZrelJNZrel;判零转移指令CJNEA,direct,relCJNEA,#data,relCJNERn,#data,relCJNE@Ri,#data,rel;比较转移指令这类指令不影响任何操作数。161)累加器判零指令JZ指令的功能是判断累加器A的值。若累加器A的值为0,则程序转移到目标地址;否则,顺序执行程序。JNZ指令的功能是判断累加器A的值。若累加器A的值不为0,则程序转移到目标地址;否则,顺序执行程序。例:设(A)

8、=01HJZLABEL1DECAJZLABEL217

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。