片机学习位指令转移指令.pptx

上传人:莉*** 文档编号:74452966 上传时间:2023-02-26 格式:PPTX 页数:8 大小:368.89KB
返回 下载 相关 举报
片机学习位指令转移指令.pptx_第1页
第1页 / 共8页
片机学习位指令转移指令.pptx_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《片机学习位指令转移指令.pptx》由会员分享,可在线阅读,更多相关《片机学习位指令转移指令.pptx(8页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、会计学1片机学习位指令转移指令片机学习位指令转移指令【例例例例3-133-133-133-13】CLR CCLR CCLR CCLR C ;0Cy0Cy0Cy0CyCLR 27HCLR 27HCLR 27HCLR 27H ;024H.7024H.7024H.7024H.7位位位位CPL 08HCPL 08HCPL 08HCPL 08H ;21H.021H.021H.021H.0 求反求反求反求反21H.021H.021H.021H.0位位位位SETB P1.7SETB P1.7SETB P1.7SETB P1.7 ;1P1.71P1.71P1.71P1.7位位位位24H.721H.097H或9

2、0H.7P.45第1页/共8页【例例例例B3-13B3-13B3-13B3-13】利利利利用用用用位位位位逻逻逻逻辑辑辑辑指指指指令令令令,模模模模拟拟拟拟下下下下图图图图所所所所示示示示硬硬硬硬件件件件逻逻逻逻辑辑辑辑电电电电路路路路功功功功能能能能。参考子程序如下参考子程序如下参考子程序如下参考子程序如下:PR2:MOV C,P1.1 ;(CY)(P1.1)PR2:MOV C,P1.1 ;(CY)(P1.1)ORL C,P1.2 ;(CY)(P1.1)ORL C,P1.2 ;(CY)(P1.1)(P1.2)(P1.2)ANL C,P1.0 ;(CY)A ANL C,P1.0 ;(CY)A(

3、P1.0)(P1.0)CPL C ;(CY)CPL C ;(CY)MOV MOV F0F0,C ;B,C ;B点逻辑值暂存于点逻辑值暂存于点逻辑值暂存于点逻辑值暂存于F0F0(F0F0即即即即PSW.5PSW.5位)位)位)位)MOV C,P1.3 ;(CY)(P1.3)MOV C,P1.3 ;(CY)(P1.3)ANL C,/P1.4 ;(CY)(P1.3)ANL C,/P1.4 ;(CY)(P1.3)ORL C,ORL C,F0F0 ;(CY)D ;(CY)DB B MOV P1.5 MOV P1.5,C ;C ;运算结果输出到运算结果输出到运算结果输出到运算结果输出到P1.5P1.5端端

4、端端 RET RET 硬件逻辑电路图=A点逻辑=B点逻辑=D点逻辑第2页/共8页【例例例例B3-14B3-14B3-14B3-14】如下控制梯形图如下控制梯形图如下控制梯形图如下控制梯形图,请用请用请用请用MCS-51MCS-51MCS-51MCS-51程序实现程序实现程序实现程序实现:MOV C,P1.3 ;MOV C,P1.3 ;取取取取P1.3P1.3 ANL C,P1.2 ;ANL C,P1.2 ;串联串联串联串联P1.2 P1.2 ORL C,P2.1 ;ORL C,P2.1 ;并联并联并联并联 P2.1P2.1 ANL C,/P2.0 ;ANL C,/P2.0 ;串联串联串联串联

5、P2.0P2.0常闭点常闭点常闭点常闭点 MOV P2.0,C ;MOV P2.0,C ;输出输出输出输出 P2.0P2.0输入开关量输出驱动 请与可编程逻辑控制器的梯形图程序相比较,各自的实现原理与特点?LD OUT 第3页/共8页3.4.4 控制转移类指令 指令助记符中只需写目标指令前的标号 P.43(POP PC)无条件转移条件转移比较转移循环控制相减但不存差值,生成了Cy减1后回存再判00H否执行相对转移:PC PC +rel;rel=目标地址-下一指令址低8位 目标地址 下一指令址+偏移量 A=00H时转移A00H时转移ByteTM兼容于MCS-4864K范围内第4页/共8页;单字节

6、单字节单字节单字节BCDBCDBCDBCD码加法运算码加法运算码加法运算码加法运算0000 0000 ORG 0000HORG 0000H0000 800000 802E2E SJMP SJMP MAINMAIN0002 0002 0030 0030 ORG 0030HORG 0030H00300030 7456 MAIN:MOV A,#56H 7456 MAIN:MOV A,#56H0032 2467 0032 2467 ADD A,#67HADD A,#67H0034 D4 0034 D4 DA ADA A0035 F530 0035 F530 MOV 30H,AMOV 30H,A0037

7、 80FE 0037 80FE SJMP$SJMP$;0039 END0039 END【例B3-16】单字节BCD码加法运算(BCD.ASM)目标地址 0030 减下一址-0002 获rel字节 002E+46补PC执行相对转移:PC PC +rel;rel=目标地址-下一指令址低8位 目标地址 下一指令址+偏移量 0030H 0002H +0046H+48+2第5页/共8页【例例例例B3-15B3-15B3-15B3-15】编程序实现编程序实现编程序实现编程序实现P1.3P1.3P1.3P1.3输出驱动输出驱动输出驱动输出驱动LEDLEDLEDLED以以以以1 1 1 1秒为周期闪烁。秒为周

8、期闪烁。秒为周期闪烁。秒为周期闪烁。ORG 0000HORG 0000HORG 0000HORG 0000H0000 C2 93 CLR P1.3 0000 C2 93 CLR P1.3 0000 C2 93 CLR P1.3 0000 C2 93 CLR P1.3 ;输出控制端清零;输出控制端清零;输出控制端清零;输出控制端清零0002 7F 080002 7F 080002 7F 080002 7F 08 LOOP0:MOV R7,#8 LOOP0:MOV R7,#8 LOOP0:MOV R7,#8 LOOP0:MOV R7,#8 ;软件延时;软件延时;软件延时;软件延时0.50.50.5

9、0.5秒秒秒秒0004 7E C80004 7E C80004 7E C80004 7E C8 LOOP7:MOV R6,#200 LOOP7:MOV R6,#200 LOOP7:MOV R6,#200 LOOP7:MOV R6,#200 0006 7D 0006 7D 0006 7D 0006 7D 64646464 LOOP6:MOV R5,#LOOP6:MOV R5,#LOOP6:MOV R5,#LOOP6:MOV R5,#100100100100 0008 000008 000008 000008 00 LOOP5:NOP LOOP5:NOP LOOP5:NOP LOOP5:NOP 0

10、009 DD0009 DD0009 DD0009 DD FDFDFDFD DJNZ R5,LOOP5 DJNZ R5,LOOP5 DJNZ R5,LOOP5 DJNZ R5,LOOP5 000B DE000B DE000B DE000B DE F9F9F9F9 DJNZ R6,LOOP6 DJNZ R6,LOOP6 DJNZ R6,LOOP6 DJNZ R6,LOOP6 000D DF000D DF000D DF000D DF F5F5F5F5 DJNZ R7,LOOP7 DJNZ R7,LOOP7 DJNZ R7,LOOP7 DJNZ R7,LOOP7 000F B2 93 CPL P1.3

11、 000F B2 93 CPL P1.3 000F B2 93 CPL P1.3 000F B2 93 CPL P1.3 ;输出控制端求反;输出控制端求反;输出控制端求反;输出控制端求反0011 80 0011 80 0011 80 0011 80 EFEFEFEF SJMP LOOP0 SJMP LOOP0 SJMP LOOP0 SJMP LOOP0 ;循环;循环;循环;循环0013 END0013 END0013 END0013 END 目标地址 0002 减下一址-0013 获rel字节 FFEF 目标地址 0004 减下一址 000F 获rel字节 FFF5 执行相对转移:PC PC

12、+rel;rel=目标地址-下一指令址低8位 目标地址 下一指令址+偏移量 rel的单字节补码 rel=-128+127(相对于下一指令址的跳转偏移量)Relative-3补-7补-17补-11补第6页/共8页【例例例例B3-15B3-15B3-15B3-15】实现实现实现实现P1P1P1P1口输出驱动口输出驱动口输出驱动口输出驱动8 8 8 8只只只只LEDLEDLEDLED巡回点亮的控制程序巡回点亮的控制程序巡回点亮的控制程序巡回点亮的控制程序0000 ORG 0000H0000 ORG 0000H0000 ORG 0000H0000 ORG 0000H0000 75816F MAIN:M

13、OV SP,#6FH ;0000 75816F MAIN:MOV SP,#6FH ;0000 75816F MAIN:MOV SP,#6FH ;0000 75816F MAIN:MOV SP,#6FH ;设定栈底指针设定栈底指针设定栈底指针设定栈底指针0003 759001 MOV P1,#0FEH;0003 759001 MOV P1,#0FEH;0003 759001 MOV P1,#0FEH;0003 759001 MOV P1,#0FEH;置控制码初始值并输出置控制码初始值并输出置控制码初始值并输出置控制码初始值并输出P1P1P1P1口口口口 0006 120010 LOOP:LCAL

14、L 0006 120010 LOOP:LCALL 0006 120010 LOOP:LCALL 0006 120010 LOOP:LCALL D1SD1SD1SD1S ;调用延时调用延时调用延时调用延时1S1S1S1S子程序子程序子程序子程序0009000900090009 E590 MOV A,P1 ;E590 MOV A,P1 ;E590 MOV A,P1 ;E590 MOV A,P1 ;读入读入读入读入P1P1P1P1口原控制码口原控制码口原控制码口原控制码000B 23 RL A ;000B 23 RL A ;000B 23 RL A ;000B 23 RL A ;调整控制码(循环左移

15、一位)调整控制码(循环左移一位)调整控制码(循环左移一位)调整控制码(循环左移一位)000C F590 MOV P1,A ;000C F590 MOV P1,A ;000C F590 MOV P1,A ;000C F590 MOV P1,A ;输出新控制码到输出新控制码到输出新控制码到输出新控制码到P1P1P1P1口口口口 000E 80F6 SJMP LOOP ;000E 80F6 SJMP LOOP ;000E 80F6 SJMP LOOP ;000E 80F6 SJMP LOOP ;反复循环执行上述控制程序反复循环执行上述控制程序反复循环执行上述控制程序反复循环执行上述控制程序00100

16、01000100010 7F08 7F08 7F08 7F08 D1SD1SD1SD1S:MOVMOVMOVMOV R7,#8R7,#8R7,#8R7,#8 ;软件延时约软件延时约软件延时约软件延时约1S1S1S1S子程序子程序子程序子程序0012 7EC8 0012 7EC8 0012 7EC8 0012 7EC8 D1S2:MOV R6,#200D1S2:MOV R6,#200D1S2:MOV R6,#200D1S2:MOV R6,#2000014 7D0014 7D0014 7D0014 7DC8C8C8C8 D1S1:MOV R5,#D1S1:MOV R5,#D1S1:MOV R5,#

17、D1S1:MOV R5,#2002002002000016 00 0016 00 0016 00 0016 00 D1S0:NOPD1S0:NOPD1S0:NOPD1S0:NOP0017 DD0017 DD0017 DD0017 DDFDFDFDFD DJNZ R5,D1S0DJNZ R5,D1S0DJNZ R5,D1S0DJNZ R5,D1S00019 DE0019 DE0019 DE0019 DEF9F9F9F9 DJNZ R6,D1S1DJNZ R6,D1S1DJNZ R6,D1S1DJNZ R6,D1S1001B DF001B DF001B DF001B DFF5F5F5F5 DJNZ R7,D1S2DJNZ R7,D1S2DJNZ R7,D1S2DJNZ R7,D1S2001D 22 RET001D 22 RET001D 22 RET001D 22 RET ;子程序返回子程序返回子程序返回子程序返回 END END END END观察运行效果移位改RLC A?移位改RR A?延时改0.5S,0.25S?子程序返回地址(LED.ASM)偏移量与上例相同0驱动LED亮相对转移指令的偏移量不随程序段存储地址而改变,因为在程序段内跳转的相对距离没有变化第7页/共8页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com