1 / 100
文档名称:

单片机原理及接口技术:2 MCS-51系列单片机的指令系统.ppt

格式:ppt   大小:2,513KB   页数:100页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机原理及接口技术:2 MCS-51系列单片机的指令系统.ppt

上传人:窝窝爱蛋蛋 2021/3/6 文件大小:2.45 MB

下载得到文件列表

单片机原理及接口技术:2 MCS-51系列单片机的指令系统.ppt

相关文档

文档介绍

文档介绍:*
§2 MCS-51系列单片机的指令系统
指令系统简介
寻址方式
数据传送类指令
算术运算类指令
逻辑运算及移位类指令
控制转移类指令
位操作类指令
*
2.1 指令系统概述
指令是规定计算机进行某种操作的命令。一台计算机所能执行的指令集合称为该计算机的指令系统。
2.1.1 指令概述
计算机内部只识别二进制数。因此,能被计算机直接识别、执行的指令是使用二进制编码表示的指令,这种指令被称为机器语言指令。
MCS-51系列单片机指令系统共有111条指令,按功能划分,可分为五大类:
1)数据传送类指令(29条);
2)算术运算类指令(24条);
3)逻辑运算及移位类指令(24条);
4)控制转移类指令(17条);
5)位操作类指令(17)。
*
2.1.2 指令格式
一条完整的指令格式如下:
[标号:] 〈操作码〉 [操作数] [;注释]
标号—标号是该指令的起始地址,是一种符号地址。
标号可以由1~8个字符组成,第一个字符必须是字母,其余字符可以是字母、数字或其他特定符号。标号后跟分界符“:”。
操作码—指令的助记符。它规定了指令所能完成的操作功能。
操作数—指出了指令的操作对象。操作数可以是一个具体的数据,也可以是存放数据的单元地址,还可以是符号常量或符号地址等。
多个操作数之间用逗号“,”分隔。
注释—为了方便阅读而添加的解释说明性的文字, 用“;”开头。
*
2.1.3 指令中常用符号说明
Rn —当前选中的工作寄存器组中的寄存器R0~R7之一, 所以n=0~7。
Ri —当前选中的工作寄存器组中可作地址指针的寄存器R0、R1,所以i=0、1。
#data —8位立即数。
#data16 —16位立即数。
direct —内部RAM的8位地址。即可以是内部RAM的低128个单元地址,也可以是特殊功能寄存器的单元地址或符号。在指令中direct表示直接寻址方式。
addr11 ——11位目的地址,只限于在ACALL和AJMP 指令中使用。
addr16 —16位目的地址,只限于在LCALL和LJMP 指令中使用。
*
re l—补码形式表示的8位地址偏移量,在相对转移指令中使用。
bit —表示片内RAM位寻址区或可位寻址的特殊功能寄存器的位地址;
@ —间接寻址方式中间址寄存器的前缀标志;
C —进位标志位,它是布尔处理机的累加器,也称之为位累加器;
/ —加在位地址的前面,表示对该位先求反再参与操作,但不影响该位的值;
(x)—由x指定的寄存器或地址单元中的内容;
((x))—由x所指寄存器的内容作为地址的存储单元的内容;
$ —表示本条指令的起始地址;
← —表示指令操作流程,将箭头右边的内容送到箭头左边的单元中。
*
2.2 寻址方式
寻址就是寻找操作数的地址,寻址方式则指出寻找操作数地址的方式方法。
MCS-51系列单片机提供了七种寻址方式。
3.2.1 立即寻址
所谓立即寻址就是在指令中直接给出操作数。通常把出现在指令中的操作数称为立即数。为了与直接寻址指令中的直接地址相区别,在立即数前面加“#”标志。例如:
MOV A,#3AH
其中3AH就是立即数,该指令功能是将3AH这个数本身送入累加器A中。
*
2.2.2 直接寻址
在指令中直接给出操作数地址,这就是直接寻址方式。
例如:
MOV A,3AH
其中3AH就是表示直接地址,
其操作示意图如图3-1所示,
直接寻址方式可访问以下
存储空间:
①内部RAM低128个字节单元。
②特殊功能寄存器。
应注意:直接寻址是访问特殊功能
寄存器的唯一方法。
*
2.2.3 寄存器寻址
寄存器寻址即寄存器的内容就是操作数。因此在指令的操作数位置上指定了寄存器就能得到操作数。MOV A,R0
MOV R2,A
前一条指令是将R0寄存器的内容送到累加器A中。
后一条是把累加器A中的内容传送到R2寄存器中。
采用寄存器寻址方式的指令都是一字节的指令,可以作寄存器寻址的寄存器有:R0~R7、A、B寄存器和数据指针DPTR
*
2.2.4 寄存器间接寻址
所谓寄存器间接寻址就是以寄存器中的内容作为RAM地址,该地址中的内容才是操作数。
寄存器前加“@”标志,表示间接寻址。
例如:MOV A,***@R0
其操作示意图如图3-2所示。
此时R0寄存器的内容3AH
是操作数地址,内部RAM的
3AH单元的内容65H才是操
作数,把该操作数传送到
累加器A中,结果A=65H。
*
能用于间接寻址的寄存器