欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    任务八学习应用位操作指令.ppt

    • 资源ID:5216816       资源大小:224KB        全文页数:21页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    任务八学习应用位操作指令.ppt

    2023/6/14,数控技术,1,任务八 学习、应用位操作指令,1.位传送指令(2条)MOV C,bit;(bit)CyMOV bit,C;(Cy)bit2.位置位、清零、取反指令(6条)SETB C;1Cy CLR bit;0bit CPL C;cySETB bit;1bit CLR C;0Cy CPL bit;bit3.位运算指令(4条)ANL C,bit;(Cy)(bit)CyANL C,/bit;(Cy)CyORL C,bit;(Cy)(bit)CyORL C,/bit;(Cy)Cy,2023/6/14,数控技术,2,4、位控制转移指令(5条)JC re;若(Cy)=1,则PC+2+relPC,程序转移执行;若(Cy)=0,则PC+2PC,程序顺序执行JNC rel;若(Cy)=0,则PC+2+relPC,程序转移执行;若(Cy)=1,则PC+2PC,程序顺序执行JB bit,rel;若(bit)=1,则PC+3+relPC,程序转移执行;若(bit)=0,则PC+3PC,程序顺序执行JNB bit,rel;若(bit)=0,则PC+3+relPC,程序转移执行;若(bit)=1,则PC+3PC,程序顺序执行JBC bit,rel;若(bit)=1,则PC+3+relPC,程序转移执行 且 0bit;若(bit)=0,则PC+3PC,程序顺序执行,任务八 学习、应用位操作指令,2023/6/14,数控技术,3,【例3-29】试编程实现将内RAM中以BUF开始的一批有符号数,将正数送外RAM的正数区,负数送外RAM的负数区,遇到0中止。(设正数区起点地址是30H,负数区起点地址是60H)源程序:MOV R0,#BUF;将数据块的首地址送到R0中 MOV R1,#30H;将正数的首地址送到R1中 MOV DPTR,#0060H;将负数的首地址送到DPTR中 MP3:MOV A,R0;将数据读到累加器A中 JNZ MP4;判断A中数据不是0 SJMP$;累加器A中数据是0中止 MP4:JB ACC.7,MP5;累加器A中数据是负数?MOVX R1,A;将正数送正数区 INC R0;指向数据块的下一个数据 INC R1;指向正数区的下一个单元 MP5:MOVX DPTR,A;将负数送负数区 INC R0;指向数据块的下一个数据 INC DPTR;指向负数区的下一个单元 AJMP MP3;返回继续 END,任务八 学习、应用位操作指令,2023/6/14,数控技术,4,任务八 初步掌握MCS51单片机汇编程序设计,认知1 了解单片机伪指令,伪指令又称指示性指令,具有和指令类似的形式,但汇编时伪指令并不产生可执行的目标代码,只是对汇编过程进行某种控制或提供某些汇编信息。定位伪指令ORG 定义字节数据伪指令DB 定义字数据伪指令DW 定义空间伪指令DS 符号定义伪指令EQU或 数据赋值伪指令DATA 数据地址赋值伪指令XDATA 汇编结束伪指令END,2023/6/14,数控技术,5,1.定位伪指令ORG格式:标号:ORG 地址表达式功能:规定程序块或数据块存放的起始位置例如:ORG 1000H;MOV A,#20H 存放于1000H开始的单元。表示下面指令MOV A,#20H存放于1000H开始的单元。说明:程序中可以出现多个ORG指令。2.定义字节数据伪指令DB格式:标号:DB 字节数据表功能:字节数据表可以是多个字节数据、字符串或表达式,它表示将字节数据表中的数据从左到右依次存放在指定地址单元。例如:ORG 1000H TAB:DB 2BH,0A0H,A,2*4;表示从1000H单元开始的地方存放数据2BH,0A0H,41H(字母A的ASCII码),08H。,任务八 初步掌握MCS51单片机汇编程序设计,认知1 了解单片机伪指令,2023/6/14,数控技术,6,任务八 初步掌握MCS51单片机汇编程序设计,认知1 了解单片机伪指令,3.定义字数据伪指令DW格式:标号:DW 字数据表功能:与DB类似,但DW定义的数据项为字,包括两个字节,存放时高位在前,低位在后。例如:ORG 1000HDATA:DW 324AH,3CH;表示从1000H单元开始的地方存放数据32H,4AH,00H,3CH(3CH以字的形式表示为003CH)。4.定义空间伪指令DS格式:标号:DS 表达式功能:从指定的地址开始,保留多少个存储单元作为备用空间。例如:ORG 1000HBUF:DS 50TAB:DB 22H;表示从1000H开始的地方预留50(1000H1031H)个存储字节空间,22H存放在1032H单元。,2023/6/14,数控技术,7,任务八 初步掌握MCS51单片机汇编程序设计,认知1 了解单片机伪指令,5.符号定义伪指令EQU或=格式:符号名 EQU 表达式符号名=表达式功能:将表达式的值或某个特定汇编符号定义为一个指定的符号名,只能定义单字节数据,并且必须遵循先定义后使用的原则,因此该语句通常放在源程序的开头部分。例如:SUM EQU 21H MOV A,SUM;执行指令后,累加器A中的值为21H中的数据6.数据赋值伪指令DATA格式:符号名 DATA 表达式功能:将表达式的值或某个特定汇编符号定义一个指定的符号名,只能定义单字节数据,但可以先使用后定义,因此用它定义数据可以放在程序末尾进行数据定义。举例:MOV A,#LEN LEN DATA 10,2023/6/14,数控技术,8,任务八 初步掌握MCS51单片机汇编程序设计,认知1 了解单片机伪指令,7.数据地址赋值伪指令XDATA格式:符号名 XDATA 表达式功能:将表达式的值或某个特定汇编符号定义一个指定的符号名,可以先使用后定义,并且用于双字节数据定义。举例:DELAY XDATA 0356HLCALL DELAY;执行指令后,程序转到0356H单元执行8.汇编结束伪指令END格式:标号:END 功能:汇编语言源程序结束标志,用于整个汇编语言程序的末尾处。,2023/6/14,数控技术,9,程序设计概述设计语言,最早人们只能用机器语言(二进制)编写程序;为了方便记忆,人们开始用助记符形式的汇编语言编写程序,称为低级语言。然后再用汇编系统将其翻译成机器语言,该过程称为汇编;为了用更接近人的语言编写程序,程序设计师们发明了高级语言,如:BASIC、FORTRAN、PASCAL、C、JAVA 然后再用编译系统将其翻译成机器语言,该过程称为编译;机器只能识别机器语言。所以必须用编译系统将高级语言编写的源程序编译成机器语言,用汇编系统将用汇编语言编写的源程序汇编成机器语言;由低级或高级语言构成的程序称为源程序,由机器语言构成的程序称作目标程序;,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,10,1.汇编程序设计步骤(1)分析问题,确定算法(2)画出程序流程图编写较复杂的程序,画出程序流程图是十分必要的。所谓程序流程图也称为程序框图,是根据控制流程设计的,它直接反映了整个系统以及各个部分之间的相互关系,同时也反映操作顺序,因而有助于分析出错原因。(3)分配内存工作区及有关端口地址(4)编制汇编源程序(5)仿真调试程序(6)固化程序,1、单片机汇编语言程序设计的基本步骤如下,认知2 掌握汇编语言程序设计与汇编,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,11,顺序程序:顺序程序是最简单、最基本的程序结构,其特点是按指令的排列顺序一条条地执行,直到全部指令执行完毕为止。分支程序:分支程序是通过转移指令对相应条件的判断实现改变程序的执行方向的设计方法。循环程序:在程序中需要反复的执行的程序段,为了避免在程序中多次的编写,可以通过利用条件转移或无条件转移指令来控制程序的执行。子程序结构:把实现一定功能的程序编制好,供其他程序调用。,单片机汇编语言程序主要的几种程序设计方法:,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,12,顺序结构结构特点:按指令的先后顺序依次执行。例:将内RAM20H单元的两个压缩BCD码拆开变成ASCII码,存入21H、22H单元。(假设20H中的BCD码为00110100),什么是BCD码?什么是ASII码?,0011,压缩BCD码,0011,0011,0100,低四位ASII码,高四位ASII码,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,13,方法1:将BCD码除以10H,恰好是将BCD码分别移到了A、B的低4位。然后再各自与30H相或,即成为ASCII码。,方法2:利用半字节交换指令来实现。,任务八 初步掌握MCS51单片机汇编程序设计,认知2 掌握汇编语言程序设计,2023/6/14,数控技术,14,ORG 0000HMOV A,20HMOV B,#10HDIV ABORL B,#30HMOV 22H,BORL A,#30HMOV 21H,ASJMP$,方法1,源程序如下:,0011,0100,PC,PC,PC,0011 0100,0001 0000,PC,0011,0000,0000 0100,PC,0011 0100,PC,PC,PC,0011,PC,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,15,ORG 0000H MOV R0,#20H MOV A,#30H XCHD A,R0 MOV 22H,A MOV A,R0 SWAP A ORL A,#30H MOV 21H,A SJMP$,方法2,PC,PC,PC,PC,PC,PC,PC,PC,PC,源程序如下:,0011,0010 0000,0011,0100,0000,0100,0011,0100,0011,0000,0011,0000,0011,PC,0011,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,16,分支程序结构结构特点:不一定按指令的先后顺序依次运行程序,程序的流向有两个或两个以上分支,根据指定条件选择程序的流向。实例:已知30H单元中有一变量X,要求编写一程序按下述要求给Y赋值,结果存入31H单元。X+1,X0 Y=0,X=0 1,X0题意:根据X的不同,程序编写时有三个出口,即有三个分支!,想一想:程序怎么编写?,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,17,开始,XA,A=1,A=A+1,存结果,结束,Y,Y,N,N,程序框图:,A0?,A=0?,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,18,源程序如下:ORG 2000H MOV A,30H JZ LP1;X=0,转LP1处理 JNB ACC.7,LP2;X0,转LP2处理 MOV A,#0FFH;X0,则Y=1 SJMP LP1 LP2:ADD A,#01;X 0,Y=X+1 LP1:MOV 31H,A;存结果 SJMP$;循环等待,$表示转至 本地址,此方法适用 于一字节的偏移量,最高位为符号位。,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,19,结构特点:利用转移指令反复运行需要多次重复的程序段。例如:延时程序:(DELAY)DELAY:MOV R3,#OFFH DEL2:MOV R4,#0FFH DEL1:DJNZ R4,DEL1 DJNZ R3,DEL2 RET 循环程序的组成:1.初始化部分(设定循环次数等)。2.循环体(重复执行的部分,用于完成实际操作)3.循环控制(不断修改和判别循环变量,直至结束)。4.循环结束处理。,循环程序结构,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,20,子程序结构,在实际问题中,常常会遇到在一个程序中多次用到相同的运算或操作,若每遇到这些运算或操作,都从头编起,将使程序繁琐、浪费内存。因此在实际中,经常把这种多次使用的程序段,按一定结构编好,存放在存储器中,当需要时,可以调用这些独立的程序段。通常将这种可以被调用的程序段称为子程序。,主要内容:1.主程序与子程序的关系 2.子程序嵌套 3.子程序的调用与返回,任务八 初步掌握MCS51单片机汇编程序设计,2023/6/14,数控技术,21,任务八 初步掌握MCS51单片机汇编程序设计,【例3-33】设有一长度为30H的字符串在单片机内RAM中,其首地址为40H,要求将该字符串中的每一个字符加偶校验位,试编程用子程序的方法来实现。参考程序:ORG0030HMAIN:MOV R0,#40H;置地址指针R0初值 MOV R7,#30H;置字符串长度LOOP:MOV A,R0;取未加检验位的ASCII码 LCALL MP3;调用子程序 MOV R0,A;将加检验位的ASCII码送回 INC R0;修改数据指针 DJNZ R7,LOOP;判断数据循环是否结束?SJMP$MP3:ADD A,#00H JNB PSW.0,MP4 ORL A,#80H MP4:RET END,

    注意事项

    本文(任务八学习应用位操作指令.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开