单片机原理及应用PrincipleandapplicationofMCu2、伪指令P89-93在汇编时起控制作用,自身并不产生机器码而仅是为汇编服务的一些指令,称为伪指令。伪指令不属于51指令系统。告诉汇编程序在翻译应用程序时有何具体约定。伪指令不进行具体的操作,那是真指令的事。比如:从何处开始,何处结束,某些编程者自己规定的表述代表什么意思
单片机原理及应用 Principle and application of MCU 在汇编时起控制作用,自身并不产生机器码, 而仅是为汇编服务的一些指令,称为伪指令。伪指 令不属于51指令系统。 告诉汇编程序在翻译应用程序时有何具体 约定。伪指令不进行具体的操作,那是真指 令的事。 比如:从何处开始,何处结束,某些编程 者自己规定的表述代表什么意思. 2、伪指令 P89-93
单片机原理及应用Principle and applicationof MCU常用的伪指令有以下几种---汇编起始地址命令1. ORG(Origin)2.END(ENDofassembly)----汇编终止命令3. DB (Define Byte)定义字节命令4. DW (Define Word)定义字命令5. DS (Define Space)留空间命令6. EQU
单片机原理及应用 Principle and application of MCU 1. ORG(Origin) -汇编起始地址命令 2.END(END of assembly)-汇编终止命令 3.DB (Define Byte) -定义字节命令 4.DW(Define Word) -定义字命令 5.DS (Define Space) -留空间命令 6. EQU 常用的伪指令有以下几种:
单片机原理及应用PrincipleandapplicationofMCu指令系统二、1、什么是指令?指挥单片机完成各种操作(数据传送指令、算术运算指令、位运算指令、程序流程控制指令等)的命令称指令单片机能够给识别的指令的全体称之为指令系统。2、指令系统分类51系列单片机指令系统中包含有111条指令。(1)按指令长度分类:单字节指令(49条);双字节指令(46条):3字节指令(16条)(2)按指令执行时间分类:单周期指令(64条):双周期指令(45条):4周期指令(2条)(3)按指令功能分类(29条)(24条)数据传送类;算术运算类;P363(24条)(17条)逻辑运算类;控制转移类;位操作类。(17条)
单片机原理及应用 Principle and application of MCU 指挥单片机完成各种操作(数据传送指令、算术运算 指令、位运算指令、程序流程控制指令等)的命令称指令。 单片机能够给识别的指令的全体称之为指令系统。 二、指令系统 1、什么是指令? 2、指令系统分类 51系列单片机指令系统中包含有111条指令。 P363 ⑴ 按指令长度分类: 单字节指令(49条);双字节指令(46条);3字节指令(16条) ⑵ 按指令执行时间分类: 单周期指令(64条);双周期指令(45条);4周期指令(2条) ⑶ 按指令功能分类: 数据传送类;(29条) 算术运算类; (24条) 逻辑运算类;(24条) 控制转移类; (17条) 位操作类。 (17条)
单片机原理及应用PrincipleandapplicationofMCU3、指令的格式一条指令通常由两个部分组成:操作码和操作数。指令=操作码十操作数操作码一一表明指令的操作功能(即表明指令进行何种操作)操作数一一表明指令参与操作的有关数据或地址P58操作码(1)(2) :操作数操作码(3) 操作码操作数1,操作数2(4)操作码操作数1,操作数2,操作数3例:NOP空操作指令ASWAP;交换指令MOVA,#40H;数据传递CJNEA,20H,LOOP1;数据比较转移指令
单片机原理及应用 Principle and application of MCU 一条指令通常由两个部分组成:操作码和操作数。 指令 = 操作码 + 操作数 操作码——表明指令的操作功能(即表明指令进行何种操作 ) 操作数——表明指令参与操作的有关数据或地址 3、 指令的格式 (1) 操作码 (2) 操作码 操作数 (3) 操作码 操作数1, 操作数2 (4) 操作码 操作数1, 操作数2, 操作数3 例: NOP ;空操作指令 SWAP A ;交换指令 MOV A,#40H ;数据传递 CJNE A, 20H,LOOP1 ;数据比较转移指令 P58
4、指令系统中常用的符号Rn一一工作寄存器R0~R7(n=0~7)Ri一一间接寻址寄存器RO、R1(i=0、1)Direct一一直接地址,包括内部128BRAM单元地址、21个SFR地址data一一8位常数(8位立即数,即包含在指令中的8位常数)#data16一一16位常数(16位立即数,即包含在指令中的16位常数)addr16一一16位目的地址addr11一一11位目的地址rel-一以补码形式表示的8位相对偏移量,范围为-128~127,主要用在相对寻址的指令中。DPTR一一16位外部数据指针寄存器bit一一可直接位寻址的位A -一累加器P59B寄存器BC (CY进、借位标志位,或位累加器间接寄存器或基址寄存器的前缀a表示对该位操作数取反,但不影响该位的原值操作流程,将箭尾一方的内容送入箭头所指另,一方的单元中去,一x中的内容(x) ) :一x中的地址中的内容6一当前指令存放的地址
4、指令系统中常用的符号 单片机原理及应用 Principle and application of MCU Rn —— 工作寄存器R0 ~ R7(n=0~7) Ri —— 间接寻址寄存器R0、R1(i=0、1) Direct —— 直接地址,包括内部128B RAM单元地址、21个SFR地址 #data —— 8位常数(8位立即数,即包含在指令中的8位常数) #data 16 —— 16位常数(16位立即数,即包含在指令中的16位常数) addr 16 —— 16位目的地址 addr 11 —— 11位目的地址 rel ——以补码形式表示的8位相对偏移量,范围为-128~127,主要用在相对寻址的指令中。 DPTR —— 16位外部数据指针寄存器 bit —— 可直接位寻址的位 A —— 累加器 B —— 寄存器B C(CY)—— 进、借位标志位,或位累加器 @ —— 间接寄存器或基址寄存器的前缀 / ——表示对该位操作数取反,但不影响该位的原值。 → ——操作流程,将箭尾一方的内容送入箭头所指另一方的单元中去。 (x)—— x中的内容 ((x))—— x中的地址中的内容 $ —— 当前指令存放的地址 P59