3 单片机指令系统.ppt_第1页
3 单片机指令系统.ppt_第2页
3 单片机指令系统.ppt_第3页
3 单片机指令系统.ppt_第4页
3 单片机指令系统.ppt_第5页
已阅读5页,还剩83页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、14:01,1,冯制,单片机原理及接口技术,第3章MCS-51单片机指令系统,14336001,2,冯制,本章教学要求,熟悉MCS-51单片机指令系统的分类和格式;熟悉MCS-51指令系统的七种寻址方式;掌握MCS-51指令系统的数据传输、算术运算、逻辑运算、转移运算、布尔运算等指令功能;掌握MCS-51指令系统的各种指令对寄存器资源的占用。第3章MCS-51单片机指令系统,14336001,3,冯制,本章内容,3.1指令系统简介3.1.1指令系统分类3.1.2指令格式3.1.3指令3.1.4寻址方式中的常用符号,第3章MCS-51单片机指令系统,3.2指令系统3.2.1数据传输指令3.2.2

2、算术运算指令3.2.3逻辑运算指令3.2.4控制转移指令3 3.1指令系统简介,指令系统计算机所有指令的集合称为该计算机的指令系统。 每台计算机都有自己的特殊指令系统。指令是指计算机执行某些操作(如传输数据和进行算术运算等)的命令。)。指令系统,14:01,5,冯制。如果你想让电脑工作,你必须给电脑下达指令。指令的格式是机器代码指令格式,如75905B,它是数字格式。另一种指令格式,即汇编指令格式,如:movp1,# 5bh,-2指令格式,3.1指令系统介绍,14:01,6,冯制,-MCS-51汇编语言指令格式,操作数1和操作数2;注意,MCS-51单片机的汇编语言使用40多种助记符来表示30

3、多种指令功能。MCS-51单片机能识别和执行111条指令。这111条指令构成了MCS-51单片机的指令系统。3.1指令系统介绍,14:01,7,冯制作,-特点:1)指令执行时间短。一个机器周期有64条指令,两个机器周期有45条指令,四个机器周期只有2条指令(乘法和除法指令)。2)指令字节少。有49个单字节指令、46个双字节指令和16个三字节指令。3)操作说明丰富,说明MCS-51单片机具有面向控制的特点。3.1指令系统简介,14:01,8,冯制,3.1.1指令系统分类,MCS-51单片机可识别和执行的指令有111条。根据指令占用的字节数、指令执行时间和指令功能。1按指令占用的字节数分类1)单字

4、节指令(49) 2)双字节指令(46) 3)三字节指令(16),按指令占用的存储空间分类,14336001,9,冯制,2按指令执行时间分类,1)单周期指令(65) 3.1.1指令系统分类,可按指令执行时间分类,14336001,10,冯制,1)数据3)逻辑运算指令(24)和4)控制转移指令(14)按指令功能分类,3按指令功能分类,14:01,11,冯制,3.1.2指令格式,由操作码和操作数组成。 操作码用于指定要执行的操作的性质,操作数为指令操作提供数据和地址。1指令:操作码操作数1、操作数2和操作数3的基本格式符号地址;注:“:”用作符号地址和操作码之间的分隔符,可以添加几个空格。空格用作操

5、作码和操作数之间的分隔符。使用“,”作为操作数之间的分隔符。使用“;”注释前作为分隔符。基本格式,14:01,12,冯制,一个指令必须写在一行。例子:主:MOV甲,# 10h主程序段是符号地址;MOV是操作代码;一,#10H是两个操作数;最后是评论。指令在被发送到计算机执行之前必须被转换成机器语言。转换成机器语言的过程叫做装配,有两种装配方法:机器装配和手工装配。3.1.2指令格式,基本格式,14:01,13,冯制,3.1.3指令中常用符号。为便于阅读说明,MCS-51指令助记符中的一些常见符号约定如下。Rn:表示当前工作寄存器R0R7之一。Ri:表示寄存器的间接寻址,通常用作间接寻址的地址指

6、针。其中R1代表R0和R1寄存器之一。直接:表示内部数据存储单元的地址和特殊功能寄存器SFR的地址。对于SFR,可以直接使用其物理地址或名称。14:01,14,冯制,#日期:表示8位立即数,即8位常数,取值范围为#00H#0FFH。日期16:表示16位立即数,即16位常数,其取值范围为#0000H#0FFFFH。Addr16:表示16位地址。Addr11:表示11位地址。Rel:以补码形式表示的地址偏移量,取值范围为-128 127。位:表示内部随机存取存储器(RAM)和随机存取存储器(SFR)中具有位寻址功能的位地址。3.1.3指令中的通用符号,14:01,15,由冯制造,表示间接地址寄存器

7、或基址寄存器的前缀符号。$:指示当前指令的地址。/:位操作数的前缀,表示反转位操作数,例如:/bit。(X):表示存储单元X的内容.(x):指示其地址是寄存器或存储单元x的内容的存储单元的内容:指示数据传输方向。3.1.3指令14:01、16中的常用符号,3.1.4寻址方式,如何查找操作中涉及的操作数据或数据所在的地址称为寻址方式。因此,寻址模式是如何在地址范围内找到所需操作数的地址。MCS-51指令系统主要有七种寻址方式:直接寻址、直接寻址、寄存器寻址、寄存器间接寻址、基址加索引寻址、相对寻址和位寻址。14:01,17,冯制。立即寻址是将操作数直接写入指令,指令作为指令的一部分存储在代码段中

8、,并位于程序存储器中。立即寻址中的操作数称为立即数。示例:mov a,# 30h30HA,1。立即寻址,3.1.4寻址方式,-立即寻址,14:01,18,冯制,2。直接寻址,其中操作数的地址直接存储在指令中。这种寻址模式的操作数是指用于存储数据的内部数据存储器的地址,或用于存储数据的特殊功能寄存器的地址。例如:mov a,30h(30H)A,3.1.4寻址方式,直接寻址,14:01,19,冯制造,直接寻址方式可访问范围,1)特殊功能寄存器。存储单元的这一部分可以由单元地址或寄存器符号给出。例如,MOV A,90H或MOV A,P1是同一指令的两种写方法(特殊功能寄存器只能通过直接寻址来访问)。

9、2)内部数据存储器的低位128字节单元。它直接以单位地址的形式给出。对于8032/8052单片机,其内部高128字节的随机存取存储器(80HFFH)不能通过直接寻址来访问。3.1.4寻址方式,-访问范围,14:01,20,冯制造,3)位地址空间,片内随机存储器20H2FH中的128位地址,SFR中11位可寻址寄存器中的位地址(位可寻址特殊功能寄存器为B、ACC、PSW、ip和PSW) 4)在某些程序控制指令中,直接寻址可用于提供程序传输的目标地址。3.1.4寻址方式,-访问范围,直接寻址方式的可访问范围,14:01,21,冯制,-寄存器寻址,寄存器寻址是指操作数存储在寄存器中,寻址时寄存器已经

10、隐藏在指令的操作码中。例如:MOV A,R5,3.1.4寻址模式,3。寄存器寻址,14336001,22,冯制,寄存器寻址方式的寻址范围:(1)4个工作寄存器组中有32个通用寄存器(指令中只能使用当前寄存器组),以及(2)一些特殊功能寄存器。例如a、b、DPTR。,-寄存器寻址,3.1.4寻址方式,14:01,23,冯制,-寄存器寻址,4。寄存器间接寻址意味着操作数据以寄存器内容为地址存储在单元中。例如,MOV,R0;(R0)A指令的功能是将R0指示的内部内存单元的内容发送到累加器A,执行过程如图所示。在图中,假设R0=60H。3.1.4寻址方式,14:01,24,冯制造,寄存器间接寻址的寻址

11、范围:1)内部低位128字节单元(只能使用R0和作为地址间寄存器)。2)外部数据存储器(64KB字节,使用DPTR作为地址间寄存器。此外,外部低128B单元也可以用R0和R1作为地址间寄存器来寻址)。3)在堆栈操作指令中,堆栈指针被用作地址间寄存器,寻址空间是片内随机存取存储器。3.1.4寻址方式,-寻址范围,14:01,25,冯制,-基址索引,是指操作数以数字为地址的单位存储,由索引寄存器和基址寄存器的内容相加而成。其中累加器a用作索引寄存器,程序计数器PC或寄存器DPTR用作基址寄存器。基址加索引地址常用于表查找操作。如:MOVC一台,个人电脑一台;1PC,(PC)MOVC A,DPTR

12、A;(A DPTR)A,3.1.4寻址模式,5。基址索引寻址,14:01,26,冯李丰制造。相对寻址是将程序计数器PC的当前值与指令的第二个字节给出的偏移量相加,从而形成传输的目标地址。例如:JC 80小时;C=1,跳转,-相对寻址,3.1.4寻址模式,6。相对寻址,14:01,27,冯制,位寻址,位寻址是指对片内随机存储器P0P3FH中的128位地址和SFR中的11位地址进行寻址,例如:C,20H该指令将随机存储器位寻址区20H的位地址内容发送给位累加器Cy。位寻址指令不同于字节寻址指令,例如:MOV A,20H,3.1.4寻址模式,7。位寻址,14:01,28,冯制,位寻址表达式,1)位地

13、址的直接使用包括位寻址区的位地址00H7FH和一些特殊功能寄存器的位地址。例如,PSW寄存器的位2的位地址是D2H。2)位名的表示特殊寄存器中的一些寻址位有符号名,它们的符号名可以在寻址位时使用。例如,PSW寄存器的第二位可以用OV表示。3)单元地址加位的表示。例如,单元的第一位可以表示为2FH.1再例如,D0H单元(PSW)的第二位可以表示为D0H.2,3.1.4寻址方式,14:01,29,由冯制造,4)特殊寄存器名加位符号,例如,PSW寄存器的第二位可以表示为PSW.2对于可以用位寻址的特殊功能寄存器,上述四种表示是等价的。以读取PSW的第二位为例,四种位寻址指令如下:MOV C,0D2H

14、用位地址直接寻址MOV、OV;地址MOV 0d0h . 2,带位名;使用单元地址加位符号对MOV C、PSW.2进行寻址;特殊寄存器名称加位符号地址,3.1.4寻址方式,14:01,30位寻址方式,冯制造。在MCS-51单片机指令系统中,指令在哪个存储空间上运行取决于指令的操作码和寻址方式。1)只有立即寻址和基址加索引寻址可用于程序存储器;2)特殊功能寄存器只能直接寻址,不能间接寻址;3.1.4寻址方式,-summary,14:01,31,冯制,3)对于8032/8052单片机内部内存的高128字节(80HFFH),只能使用寄存器间接寻址,不能使用直接寻址;4)对位操作指令只能操作对位寻址区域

15、;5)外部扩展数据存储器只能通过MOVX指令访问;6)内部内存的低128字节(00H7FH)可以直接或间接寻址。3.1.4寻址方式,-摘要,14:01,32,冯制,寻址方式对应存储空间,3.1.4寻址方式,-寻址范围,14:01,33,冯制,3.2指令系统,MCS助记符是MOV、MOVC、摩梭、XCH、XCHD、PUSH和POP。数据传输指令的一般操作是将源操作数传输到目标操作数。指令执行后,源操作数保持不变,目标操作数等于源操作数。如果要求目标操作数在数据传输期间不丢失,则不能使用直接传输指令,但可以使用交换型数据传输指令。数据传输指令不影响标志Cy、AC和OV,但可能影响奇偶校验标志p.3.2.1数据传输指令,14:01,34,冯;3.2.1数据传输指令,14336001,35,冯,3 . 2 . 1。(rn)内容Rn)ARn被发送到MOV A,直接在累加器A中;(直接)直接地址单元的内容被发送到累加器A中的MOV;(ri)由ri的内容指向的地址单元中的内容被发送到MOV A,累加器A中的#数据;立即将数据发送到累加器a的功能:将源操作数的指定内容发送到累加

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论