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

    指令系统及汇编语言程序设计.ppt

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

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

    指令系统及汇编语言程序设计.ppt

    2 指令系统及汇编语言程序设计,2,教学目的,熟悉单片机的寻址方式掌握指令系统中的常用指令的用法了解汇编语言伪指令及其用法熟悉汇编语言程序的三种基本结构,3,本章内容,寻址方式指令系统汇编语言指令格式汇编语言程序设计概述,2.1 寻址方式,指令的机器代码由操作码和操作数组成。其中操作码规定了指令的性质和功能,操作数说明参与操作的数据或该数据所存放的地址。AT89系列单片机指令系统的寻址方式有7种,寄存器寻址、直接寻址、立即寻址、寄存器间接寻址、变址寻址、相对寻址和位寻址。,5,寻址方式,寄存器寻址寄存器寻址方式以指令中给出的某一寄存器的内容作为操作数。可以实现寄存器寻址操作的寄存器包括寄存器组R0R7,累加器ACC,寄存器B,数据指针DPTR和进位Cy等。直接寻址直接寻址方式在指令中直接给出操作数所在存储单元的地址,该地址指出了参与运算或传送的数据所在的字节单元或位的地址。直接寻址方式中操作数存储的空间有以下3种:特殊功能寄存器SFR;片内RAM的低128B(00H7FH);位地址空间。,2.1 寻址方式,6,立即寻址立即寻址方式在指令中直接给出参与操作的常数,操作码后面紧跟1个或2个字节的操作数(称为立即数)。立即寻址时操作数存放于程序存储器中,不占用内部RAM单元。在采用立即寻址的指令中立即数前面必须加上“”号标识,可以是一个8位或16位的二进制常数,也可以用十进制或十六进制表示。寄存器间接寻址寄存器间接寻址方式以指令中指定寄存器的内容作为地址,而该地址单元的内容才是操作数。这是一种二次寻址方式,所以称为寄存器间接寻址。程序执行分两步完成:首先根据指令得到寄存器的内容,即操作数的地址;然后根据地址找到所需要的操作数,并完成相应的操作。,寻址方式,2.1 寻址方式,7,变址寻址(基址寄存器+变址寄存器间接寻址)变址寻址指令由基址寄存器和变址寄存器组成,16位寄存器DPTR(数据指针)或PC(程序计数器)作为基址寄存器,8位累加器A作为变址寄存器。相对寻址 相对寻址主要是针对跳转指令而言的。对于跳转指令,转去的目标指令的地址是通过正在执行的指令地址来确定的,即以当前程序计数器PC值为基准,加上指令中给定的偏移量rel所得结果而形成实际的转移地址。位寻址 AT89C52片内RAM有两个区域可以进行位寻址:一是20H2FH的16个单元共128位的位地址;二是字节地址为8的倍数的12个特殊功能寄存器,共92个位地址。,寻址方式,2.1 寻址方式,8,AT89C52单片机的寻址方式多种,总的来说有以下几个原则:对程序存储器只能采用立即寻址和变址寻址方式;对特殊功能寄存器空间只能采用直接寻址方式,不能采用寄存器间接寻址方式;内部数据存储器高128B只能采用寄存器间接寻址方式,不能采用直接寻址方式;内部数据存储器低128B既能采用寄存器间接寻址方式,又能采用直接寻址方式;外部扩展数据存储器只能采用MOVX指令访问。,寻址方式,2.1 寻址方式,2.2 指令系统,数据传送指令(29条)算术运算指令(24条)逻辑运算指令(24条)位操作类指令(17条)控制转移类指令(17条),10,数据传送指令数据传送指令操作可以在累加器A、工作寄存器R0R7、内部数据存储器、外部数据存储器和程序存储器之间进行。,指令系统,2.2 指令系统,11,数据传送指令以累加器A为目的操作数的指令,MOV(Move)以寄存器Rn为目的操作数的指令 以直接地址为目的操作数的指令 以间接地址为目的操作数的指令16位数据传送指令查表指令,MOVC(Move Code)累加器A与片外RAM数据传送指令,MOVX(Move External RAM)堆栈操作指令,PUSH,POP数据交换指令,XCH(Exchange),XCHD(Exchange Low-order Digit),SWAP,指令系统,2.2 指令系统,12,数据传送指令例2.5 共阴极数码管对应的显示代码程序。ORG0000HMOVA,30H;PC=0000,双字节指令MOVA,#80H;PC=0002,双字节指令MOVC A,A+PC;PC=0004,双字节指令;PC=0006 0RG 0086H SEGTAB:DB 3FH,06H,5BH,4FH,66H;对应于字符0,l,2,3,4 DB 6DH,7DH,07H,7FH,67H;对应于字符5,6,7,8,9,指令系统,2.2 指令系统,13,算术运算指令算术运算指令包括加、减、乘、除基本四则运算和加1(增量)、减1(减量)运算。除加1和减1指令外,算术运算指令影响进位Cy、半进位Ac、溢出位Ov三个标志位。1不带进位的加法指令,ADD2带Cy进位的加法指令ADDC和带Cy的减法指令SUBB 3加l指令INC 和减1指令DEC4十进制调整指令,DA 5乘法指令,MUL 6除法指令,DIV,指令系统,2.2 指令系统,14,逻辑运算指令逻辑运算指令包括清0,求反、移位、与、或、异或等操作。操作助记符:CLR、CPL、RL、RLC、RR、RRC、ANL、ORL、XRL。1逻辑与指令,ANL 2逻辑或指令,ORL 3逻辑异或指令,XRL 4累加器清0和取反指令,CLR,CPL 5移位指令,RL(Rotate Left),RLC(Rotate Left With Carry Flag),RR(Rotate right),RRC(Rotate Right With Carry Flag),指令系统,15,位(布尔)操作类指令AT89C52有1个布尔处理机,它具有一套处理位变量的指令集,它以进位标志Cy作为累加器C,以片内RAM地址20H2FH单元中的128位和地址为8的倍数的SFR的位地址单元作为操作数,进行位变量的传送、修改和逻辑操作等。1位传送指令,MOV 2位清0,置1,取反指令,CLR,SETB(Set Bit),CPL3位运算指令,ANL,ORL4位条件转移指令,JC,JNC,JB,JNB,JBC,指令系统,2.2 指令系统,16,控制转移指令程序在执行过程中,有时因为操作的需要,不能按顺序逐条执行指令,而需要改变程序的运行方向,完成这些操作需要利用控制转移类指令。1无条件转移指令,AJMP,LJMP,SJMP,JMP 2条件转移指令累加器A判零转移指令,JZ,JNZ比较转移指令,CJNE 减一条件转移指令,DJNZ3子程序调用和返回指令调用指令,ACALL 返回指令,RET,RETI4空操作指令,指令系统,2.2 指令系统,2.3 汇编语言指令格式,汇编语言执行指令格式汇编伪指令,18,汇编语言执行指令格式 标号:操作码操作数1,操作数2;注释 标号代表程序的起始地址、程序名称或转移的目标地址,由用户定义的符号组成。操作码与操作数应按规定要求书写,操作码是指令的核心,不可缺少。操作码和操作数之间必须用空格分隔,操作数与操作数之间必须用逗号“,”分隔。注释是为了提高程序的可读性对指令作的说明,注释前应加上分号“;”。,汇编语言指令格式,2.3 汇编语言指令格式,19,汇编伪指令1定位伪指令,ORG2结束汇编伪指令,END 3数据说明伪指令定义字节伪指令,DB定义字伪指令,DW 定义存储空间伪指令,DS 4赋值伪指令,EQU5数据地址赋值伪指令,DATA6位地址赋值伪指令,BIT,汇编语言指令格式,2.3 汇编语言指令格式,2.4 汇编语言程序设计概述,汇编语言的特点汇编语言程序设计的步骤汇编语言程序的基本结构,21,汇编语言的特点用汇编语言编写的程序效率高,占用存储空间小,运行速度快;汇编语言是面向计算机的;汇编语言程序能够直接管理和控制硬件设备;汇编语言缺乏通用性,程序不易移植。,汇编语言程序设计概述,2.4 汇编语言程序设计概述,22,汇编语言程序设计的步骤建立数学模型 确定算法制定程序流程图确定数据结构写出源程序上机调试程序,汇编语言程序设计概述,2.4 汇编语言程序设计概述,23,汇编语言程序的基本结构顺序结构 分支结构单分支结构多分支结构循环结构,汇编语言程序设计概述,2.4 汇编语言程序设计概述,24,汇编语言程序的基本结构循环结构程序举例例2.13 AT89C52的晶振为12MHz,设计10ms延时程序。解:12MHz晶振的机器周期为1,可用双重循环写出延时程序。根据指令的执行周期计算延迟时间。ORG0000HDEL:MOV R7,#40;单周期DEL1:MOV R6,#125;单周期DEL2:DJNZ R6,DEL2;双周期 DJNZ R7,DEL1;双周期 RET,汇编语言程序设计概述,2.4 汇编语言程序设计概述,25,本章小结,熟悉单片机的寻址方式掌握指令系统中的常用指令的用法了解汇编语言伪指令及其用法熟悉汇编语言程序的三种基本结构,

    注意事项

    本文(指令系统及汇编语言程序设计.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开