5单片机10-12.ppt

上传人:本田雅阁 文档编号:2886472 上传时间:2019-06-01 格式:PPT 页数:17 大小:254.02KB
返回 下载 相关 举报
5单片机10-12.ppt_第1页
第1页 / 共17页
5单片机10-12.ppt_第2页
第2页 / 共17页
5单片机10-12.ppt_第3页
第3页 / 共17页
5单片机10-12.ppt_第4页
第4页 / 共17页
5单片机10-12.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《5单片机10-12.ppt》由会员分享,可在线阅读,更多相关《5单片机10-12.ppt(17页珍藏版)》请在三一文库上搜索。

1、3.1 单片机指令系统基础,3.2单片机指令系统的分类与说明,3.3单片机指令的应用例子,第三章 单片机的指令系统,3.1.1汇编指令的格式 由助记符、目的操作数、源操作数组成,格式如下: (标号:)操作码助记符 目的操作数,源操作数 (;注释) 标号可以是以英文字母开头的字母、数字和某些特殊符号的序列。某条指令一旦赋于标号,则在其它指令的操作数中就可以引用该标号作为引用地址。,31单片机指令系统基础,3.1.1汇编指令的格式 由助记符、目的操作数、源操作数组成,格式如下: (标号:)操作码助记符 目的操作数,源操作数 (;注释) 操作数是指指令操作所需的数据、地址或符号(标号)如: MOV

2、A,#0F4H ;把数F4H送入累加器A中 MOV A,80H ;把80H中的数送入累加器A中 INC A ;A中的数加1 CJNE A,#40H,LOOP1 ;A中数与数40H比较,不等时 ;程序转到LOOP1 DIV AB ;A中内容被B中内容除,商在A ;中,余数在B中。,3.1.1汇编指令的格式,什么是指令代码? 指令代码是程序指令的二进制数字表示方法。有单字节指令、双字节指令和三字节指令,第一个字节代码为操作码,表达了指令的操作功能,第二三个字节则为操作数或是地址、立即数。 汇编指令与指令代码例子:,3.1.2指令代码格式,Rn(0-7):当前选中组的8个工作寄存器R0-R7 Ri(

3、I=0,1): 当前选中组用于间接寻址的两个工作寄存 器R0、R1 Direct: 8位直接地址,可以是RAM单元地址(00H-7FH) 或特殊功能寄存器(SFR)地址(80H-FFH) #data: 8位常数 #data16: 16位常数 addr16: 16位地址 addr11: 11位地址 rel: 8位偏移地址,表示相对跳转的偏移字节, 按下一条指令第一个字节计算, 在-128+127取值范围内。,3.1.3汇编指令中的符号约定,DPTR:16位数据指针 Bit: 位地址,内部RAM20H2F中可寻址位和11个SFR 中的可寻址位 A: 累加器 B: B寄存器,用于乘法等指令中。 C:

4、 进位标志或进位位,或位操作指令中的位累加器 : 间接寻址寄存器的前缀 /: 位操作的取反前缀,3.1.3汇编指令中的符号约定,3.1.4指令系统的寻址方式,1.寄存器寻址方式 (1)单片机中的所有工作寄存器R0-R7及SFR都是可寻址寄存器,这些寄存器都以寄存器名作指令操作数 如:MOV A, R0 MOV SP,#70H (2)在寄存器寻址方式的操作指令中,寄存器内容作为操作数,可以是源操作数或目的操作数 如: MOV R1,#10H MOV A, R1,指令系统的寻址方式分七种方式:,2直接寻址方式 (1)直接寻址的空间有片内数据存储器的直接地址direct,它包括00H7FH中的数据区

5、及80HFFH中的SFR。 (2)直接寻址方式的操作指令直接把地址作为操作数来运行,既可作为源操作数,也可作为目的操作数 如: MOV 50H,60H MOV DPH,40H INC 60H,3.1.4指令系统的寻址方式,指令系统的寻址方式分七种方式:,3间接寻址方式 (1)间接寻址的地址空间有片内数据存储器的00HFFH和片外数据存储器的0000HFFFFH。 (2)间接寻址的寄存器有Ri和DPTR,间接寻址时前面加符号 (3)间接寻址时,寄存器中的内容是操作数的地址 如: MOV R0,#30H MOV A,R0 MOV DPTR,#0FFFH MOVX A,DPTR,3.1.4指令系统的

6、寻址方式,指令系统的寻址方式分七种方式:,4位寻址方式 (1)位寻址的位地址在RAM的20H2FH单元的128个位和SFR中可位寻址的位单元 (2)进位位C作为位操作的位累加器 (3)在位寻址操作中,位单元可以使用地址编号或位地址名, 如: SETB TR0 CLR 00H ANL C,5FH ;将5FH中的位状态与进位位 ;C相与,结果在C中,3.1.4指令系统的寻址方式,指令系统的寻址方式分七种方式:,5立即寻址方式 (1)常数用来参与指令操作,一般用#标记作前缀 (2)立即数在寻址操作中只能作源操作数 如: MOV A,#30H MOV DPTR,#2FFFH ANL A,#0F4H,3

7、.1.4指令系统的寻址方式,指令系统的寻址方式分七种方式:,6基址变址寻址方式 (1)基址变址寻址是一种间接寻址方式,PC和DPTR可作为基址地址,A作为变量地址,共有三条指令: MOVC A,A+DPTR MOVC A,A+PC JMP A+DPTR,3.1.4指令系统的寻址方式,指令系统的寻址方式分七种方式:,7相对寻址方式 (1)相对寻址中,相对地址rel是一个8位的地址偏移量,是相对于转移指令下一条指令第一个代码的地址偏移量, 为-128+127 (2)使用中应注意rel的范围不要超出,如: JZ LOOP DJNE R0,DISPLAY,3.1.4指令系统的寻址方式,指令系统的寻址方

8、式分七种方式:,3.2.1 指令的分类 按指令的操作功能,80C51单片机由数据传送、算术操作、逻辑操作、程序转移和位操作指令组成,共有111条指令。 3.2.2 指令的图解 指令图解的标记符号说明: 箭头: 表示操作数从源数到目的操作数,双箭头表示源操 作数与目的操作数可互换,箭头上标有指令助记符 圆框: 为累加器A或位累加器C 矩形框: 为指令操作数的空间 虚线矩形框: 为立即数#data,3.2 指令系统分类与说明,指令的分类图解,3.2 指令系统分类与说明,3.2.3指令系统速解表,3.3指令的应用例子,例1: 1毫秒延时程序 DL1MS: MOV R6,#14H ; R6赋初值20(

9、十进制) DL1: MOV R7,#19H ; R7赋初值25(十进制) DL2: DJNZ R7, DL2 ; R7减1不为零转DL2 DJNZ R6,DL1 ; R6减1不为零转DL1 RET ; 子程序结束,例2 :七段LED数码管显示程序,1.请区别汇编指令、指令代码、指令周期、指令长度。 2.80C51指令系统有哪些寻址方式,相应的空间在何处? 3.片内RAM20H-2FH的128个位地址与直接地址00H-7FH形式完全相同,如何在指令中区分出位寻址操作和直接地址操作? 4.什么是源操作数,什么是目的操作数?通常在指令中如何区别? 5.查表指令是在什么空间上的寻址操作? 6.80C51中有LJMP、LCALL,为何还设置了AJMP、ACALL? 7.查表指令中使用了基址加变址的寻址方式,请问DPTR、PC分别代表什么地址? 8.比较不等转移指令CJNE有哪些扩展功能?,练习与思考,指令的应用例子连接,3.3指令的应用例子,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1