指令系统概述
- 指令概述
为了容易理解、记忆和使用计算机的指令,用一些英文单词或缩写作为助记符来描述每一条指令的功能。用助记符表示的指令就是计算机的汇编语言指令,汇编语言指令与机器语言指令具有一一对应的关系。
MCS-51 系列单片机指令系统共有111条指令,按功能划分,可分为以下五大类:
-
数据传送类指令(29条);
-
算术运算类指令(24条);
-
逻辑运算及移位类指令(24条);
-
控制转移类指令(17条);
-
位操作类指令(17条)。
- 指令格式
一条完整的 MCS-51 系列单片机汇编语言的指令格式为: [标号:]〈操作码〉[操作数][;注释]
- 指令中常用符号说明
在描述 MCS-51 系列单片机指令系统的功能时,经常使用下面的符号,其意义如下。
-
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指令中使用。
-
rel:补码形式表示的8位地址偏移量,在相对转移指令中使用。
-
bit:片内RAM 位寻址区或可进行位寻址的特殊功能寄存器的位地址。
-
@:间接寻址方式中间址寄存器的前缀标志。
-
C:进位标志位,它是布尔处理机的累加器,也称之为位累加器。
-
/:加在位地址的前面,表示对该位先求反再参与操作,但不影响该位的值。
-
(x):x可以是寄存器,也可以是RAM 地址,(x)表示其中的内容。
-
((x)):x是 寄 存 器 Ri,((x))表 示 x所指寄存器的内容作为地址,其 地 址 单 元 中 的
-
内容。
-
$:本条指令的起始地址。
-
←:指令操作流程,将箭头右边的内容送入箭头左边的单元。