机械系统微机控制4解析

上传人:最**** 文档编号:116881896 上传时间:2019-11-17 格式:PPT 页数:101 大小:2.03MB
返回 下载 相关 举报
机械系统微机控制4解析_第1页
第1页 / 共101页
机械系统微机控制4解析_第2页
第2页 / 共101页
机械系统微机控制4解析_第3页
第3页 / 共101页
机械系统微机控制4解析_第4页
第4页 / 共101页
机械系统微机控制4解析_第5页
第5页 / 共101页
点击查看更多>>
资源描述

《机械系统微机控制4解析》由会员分享,可在线阅读,更多相关《机械系统微机控制4解析(101页珍藏版)》请在金锄头文库上搜索。

1、机械系统微机控制 王志刚 机械系机电教研室 EmailEmail:jxxwzg jxxwzg * 第3章 MCS-51系列单片机的指令系 统 3.1 指令系统简介 3.2 寻址方式 3.3 数据传送类指令 3.4 算术运算类指令 3.5 逻辑运算及移位类指令 3.6 控制转移类指令 3.7 位操作类指令 机械系统微机控制 31 指令系统概述 指令是规定计算机进行某种操作的命令。一台计算 机所能执行的指令集合称为该计算机的指令系统。 311 指令概述 计算机内部只识别二进制数。因此,能被计算 机直接识别、执行的指令是使用二进制编码表示的 指令,这种指令被称为机器语言指令。 MCS-51系列单片机

2、指令系统共有111条指令,按功能 划分,可分为五大类: 1)数据传送类指令(29条); 2)算术运算类指令(24条); 3)逻辑运算及移位类指令(24条); 4)控制转移类指令(17条); 5)位操作类指令(17)。 机械系统微机控制 312 指令格式 一条完整的指令格式如下: 标号: 操作码 操作数 ;注释 标号标号是该指令的起始地址,是一种符号地址。 标号可以由18个字符组成,第一个字符必须是字母 ,其余字符可以是字母、数字或其他特定符号。标号 后跟分界符“:”。 操作码指令的助记符。它规定了指令所能完成的操 作功能。 操作数指出了指令的操作对象。操作数可以是一个 具体的数据,也可以是存放

3、数据的单元地址,还可以 是符号常量或符号地址等。 多个操作数之间用逗号“,”分隔。 注释为了方便阅读而添加的解释说明性的文字, 用“;”开头。 机械系统微机控制 313 指令中常用符号说明 Rn 当前选中的工作寄存器组中的寄存器R0R7之 一, 所以n=07。 Ri 当前选中的工作寄存器组中可作地址指针的寄 存器R0、R1,所以i=0、1。 #data 8位立即数。 #data16 16位立即数。 direct 内部RAM的8位地址。即可以是内部RAM的 低128个单元地址,也可以是特殊功能寄存器的单元 地址或符号。在指令中direct表示直接寻址方式。 addr11 11位目的地址,只限于在

4、ACALL和 AJMP 指令中使用。 addr16 16位目的地址,只限于在LCALL和LJMP 指令中使用。 机械系统微机控制 re l补码形式表示的8位地址偏移量,在相对转移指令中使 用。 bit 表示片内RAM位寻址区或可位寻址的特殊功能寄存器 的位地址; 间接寻址方式中间址寄存器的前缀标志; C 进位标志位,它是布尔处理机的累加器,也称之为位 累加器; / 加在位地址的前面,表示对该位先求反再参与操作,但 不影响该位的值; (x)由x指定的寄存器或地址单元中的内容; (x)由x所指寄存器的内容作为地址的存储单元的 内容; $ 表示本条指令的起始地址; 表示指令操作流程,将箭头右边的内容

5、送到箭头左边 的单元中。 机械系统微机控制 32 寻址方式 寻址就是寻找操作数的地址,寻址方式则指出 寻找操作数地址的方式方法。 MCS-51系列单片机提供了七种寻址方式。 321 立即寻址 所谓立即寻址就是在指令中直接给出操作数。 通常把出现在指令中的操作数称为立即数。为 了与直接寻址指令中的直接地址相区别,在立 即数前面加“#”标志。例如: MOV A,#3AH 其中3AH就是立即数,该指令功能是将3AH这 个数本身送入累加器A中。 机械系统微机控制 322 直接寻址 在指令中直接给出操作数地址,这就是直接寻址方式。例如 : MOV A,3AH 其中3AH就是表示直接地址, 其操作示意图如

6、图3-1所示, 直接寻址方式可访问以下 存储空间: 内部RAM低128个字节单元。 特殊功能寄存器。 应注意:直接寻址是访问特殊功能 寄存器的唯一方法。 机械系统微机控制 323 寄存器寻址 寄存器寻址即寄存器的内容就是操作数。因此在 指令的操作数位置上指定了寄存器就能得到操作 数。MOV A,R0 MOV R2,A 前一条指令是将R0寄存器的内容送到累加器A中 。 后一条是把累加器A中的内容传送到R2寄存器中 。 采用寄存器寻址方式的指令都是一字节的指令, 可以作寄存器寻址的寄存器有:R0R7、A、B 寄存器和数据指针DPTR 机械系统微机控制 324 寄存器间接寻址 所谓寄存器间接寻址就是

7、以寄存器中的内容作为RAM地址, 该地址中的内容才是操作数。 寄存器前加“”标志,表示间接寻址。 例如:MOV A,R0 其操作示意图如图3-2所示。 此时R0寄存器的内容3AH 是操作数地址,内部RAM的 3AH单元的内容65H才是操 作数,把该操作数传送到 累加器A中,结果A=65H。 机械系统微机控制 能用于间接寻址的寄存器有R0,R1,DPTR, SP。其中R0、R1必须是工作寄存器组中的寄存器 。SP仅用于堆栈操作。 间接寻址可以访问的存储器空间包括内部RAM和 外部RAM。 内部RAM的低128个单元采用R0、R1作为间址 寄存器 外部RAM:一是采用R0、R1作为间址寄存器 ,可

8、寻址256个单元。二是采用16位的DPTR作为 间址寄存器,可寻址外部RAM的整个64KB地址 空间。 机械系统微机控制 例如: MOV R0,A ;内部RAM(R0)A (a) (b) MOVX DPTR,A;外部RAM(DPTR)A 其指令操作过程示意图如上图(b)所示。 其指令操作过程示意图如下图(a)所示。 片外RAM 2000HDPTR 30HA 2000H30H 片内RAM 30HR0 34H A 30H34H 机械系统微机控制 v对于52子系列的单片机,其内部RAM是256个字节,其高 128字节地址与特殊功能寄存器的地址是重叠的,在使用上 ,对52子系列的高128B RAM,必

9、须采用寄存器间接寻址方 式访问,对特殊功能寄存器则必须采用直接寻址方式访问 。 v325 变址寻址 v变址寻址是以DPTR或PC作基址寄存器,以累加器A作变 址寄存器,并以二者内容相加形成的16位地址作为操作数 地址(ROM中地址)。 v例如: vMOVC A,A+DPTR ;A (A)+DPTR) MOVC A,A+PC ;A (A)+(PC) 机械系统微机控制 第一条指令的功能 将A的内容与DPTR的 内容之和作为操作数 地址,把该地址中的 内容送入累加器A中, 如图3-3所示。 第二条指令的功能 将A的内容与PC的内 容之和作为操作数地 址,把该地址中的内 容送入累加器A中。 这两条指令

10、常用于访问程序存储器中的数据表格。且都为 一字节指令。 机械系统微机控制 326 相对寻址 相对寻址即将程序计数器PC的当前值与指令中给出的偏 移量rel相加,其结果作为转移地址送入PC中。相对寻址 能修改PC的值,故可用来实现程序的分支转移。 PC当前值是指正在执行指令 的下一条指令的地址。 rel是一个带符号的8位二进 制数,取值范围-128+127。 2000H:SJMP 54H 这是无条件相对转移指令, 双字节指令,指令代码80H、 54H;其中54H是偏移量。 机械系统微机控制 327 位寻址 在指令的操作数位置上直接给出位地址,这种 寻址方式称为位寻址。 MCS-51系列单片机的特

11、 色之一是具有位处理功能,可对寻址的位单独 进行各种操作。 例如:MOV C,30H 该指令的功能是把位地址30H中的值(0或1)传 送到位累加器CY中。 51系列单片机的内部RAM有两个区域可以位寻 址:一个是位寻址区20H2FH单元的128位, 另一个是字节地址能被8整除的特殊功能寄存器 的相应位。 机械系统微机控制 在MCS-51系列单片机中,位地址有以下几种表示方式: (1)直接使用位地址。对于20H2FH共16个单元的128 位,其位地址编号是00H7FH,例如,20H单元的07 位的位地址为00H07H。 (2)用单元地址加位序号表示。如25H.5表示25H单元的 D5位(位地址是

12、2DH),而PSW中的D3可表示为D0H.3。 这种表示方法可以避免查表或计算,比较方便。 (3)用位名称表示。特殊功能寄存器中的可寻址位均有 位名称,可以用位名称来表示该位。如可用RS0表示PSW 中的D3位:D0H.3 (4)对特殊功能寄存器可直接用寄存器符号加位序号表 示。如PSW中的D3位,又可表示为PSW.3。 机械系统微机控制 数据传送类指令的功能是把源操作数传送到目的操作数 ,源操作数不变,目的操作数被源操作数所代替。 331 内部RAM数据传送指令 内部RAM的数据传送类指令是指累加器、寄存器、特殊 功能寄存器、RAM单元之间的数据相互传送。 1以累加器A为目的操作数的数据传送

13、指令 MOV A,#data ;A data MOV A,direct ;A (direct) MOV A,Rn ;A (Rn) MOV A,Ri ;A ((Ri)) 这组指令的功能是将源操作数所指定的内容送入累加器 A中。 33 数据传送类指令 机械系统微机控制 2以寄存器Rn为目的操作数的数据传送指令 MOV Rn,A ;Rn (A) MOV Rn,#data ;Rn data MOV Rn,direct ;Rn (direct) 这组指令的功能是将源操作数所指定的内容送到当前工 作寄存器组R0R7中的某个寄存器中。 注意:没有“MOV Rn,Rn”指令, 也没有“MOV Rn, Ri”指

14、令。 例3-1 (A)=50H,(R1)=10H,(R2)=20H, (R3)=30H,(30H)=4FH,执行下述指令: MOV R1,A ;R1 (A) MOV R2,30H ;R2 (30H) MOV R3,#85H ;R3 85H 执行后:(R1)=50H,(R2)=4FH,(R3)=85H。 机械系统微机控制 3以直接地址为目的操作数的数据传送指令 MOV direct,A ;direct (A) MOV direct,#data ;direct data MOV direct1,direct2 ;direct1 (direct2) MOV direct,Rn ;direct (Rn

15、) MOV direct,Ri ;direct ((Ri)) 这组指令的功能是将源操作数所指定的内容 送入由直接地址direct所指定的片内存储单元。 例3-2 已知:(R0)=60H,(60H)=72H, MOV 40H,R0 ;(40H)(60H) 指令执行过程如图3-5所示。 执行结果为: (40H)=72H 机械系统微机控制 4以间接地址Ri为目的操作数的数据传送指令 MOV Ri ,A ;(Ri) (A) MOV Ri ,#data ;(Ri) data MOV Ri , direct ;(Ri) (direct) 这组指令的功能是把源操作数所指定的内容送入以R0或 R1为地址指针的片内RAM单元中。源操作数可采用寄存 器寻址、立即寻址和直接寻址3种方式。 注意:没有“MOV

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

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号