主讲楼然苗专业电工及自动化职称高级实验师办公室地址东实_第1页
主讲楼然苗专业电工及自动化职称高级实验师办公室地址东实_第2页
主讲楼然苗专业电工及自动化职称高级实验师办公室地址东实_第3页
主讲楼然苗专业电工及自动化职称高级实验师办公室地址东实_第4页
主讲楼然苗专业电工及自动化职称高级实验师办公室地址东实_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机原理与应用主讲:楼然苗专业:电工及自动化职称:高级实验师办公室地址:东实验楼412室电话:8181590668373虚第一部份51系列单片机原理第二部份设计应用程序实例3.1单片机指令系统基础

3.2单片机指令系统的分类与速解

3.3单片机指令的应用例子

第三章单片机的指令系统3.1.1汇编指令的格式由助记符、目的操作数、源操作数组成,格式如下:

(标号:)操作码助记符目的操作数,源操作数(;注释)标号可以是以英文字母开头的字母、数字和某些特殊符号的序列。某条指令一旦赋于标号,则在其它指令的操作数中就可以引用该标号作为引用地址。操作数是指指令操作所需的数据、地址或符号(标号)如:

MOV A,#40H

;把数40H送入累加器A中

MOV A,40H

;把40H中的数送入累加器A中

INC A

;A中的数加1

CJNE A,#40H,LOOP1

;A中数与数40H比较,不等时 ;程序转到LOOP1

DIV AB

;A中内容被B中内容除,商在A

;中,余数在B中。3.1单片机指令系统基础

指令代码是程序指令的二进制数字表示方法。有单字节指令、双字节指令和三字节指令,第一个字节代码为操作码,表达了指令的操作功能,第二三个字节则为操作数或是地址、立即数。汇编指令与指令代码例子:代码字节指令代码汇编指令指令周期单字节84DIVAB四周期单字节A3INCDPTR双周期双字节7440MOVA,#40H单周期三字节B440relCJNEA,#40H,LOOP双周期3.1.2指令代码格式3.1.3汇编指令中的符号约定Rn(0-7):当前选中组的8个工作寄存器R0-R7Ri(I=0,1):当前选中组用于间接寻址的两个工作寄存器R0、R1Direct:8位直接地址,可以是RAM单元地址(00H-7FH),或特殊功能寄存器(SFR)地址(80H-FFH)#data:8位常数#data16:16位常数addr16:16位地址addr11:11位地址rel: 8位偏移地址,表示相对跳转的偏移字节,按下一条指令第一个字节计算,在-128——+127取值范围内。DPTR:16位数据指针Bit: 位地址,内部RAM20H—2F中可寻址位和11个SFR

中的可寻址位A: 累加器B: B寄存器,用于乘法等指令中。C: 进位标志或进位位,或位操作指令中的位累加器@: 间接寻址寄存器的前缀/: 位操作的取反前缀3.1.3汇编指令中的符号约定(续)3.1.4指令系统的寻址方式指令系统的寻址方式分七种方式:1.寄存器寻址方式

(1)单片机中的所有工作寄存器R0-R7及SFR都是可寻址寄存器,这些寄存器都以寄存器名作指令操作数如:MOVA,R0MOV SP,#70H(2)在寄存器寻址方式的操作指令中,寄存器内容作为操作数,可以是源操作数或目的操作数 如:MOVR1,#10H MOVA,R12.直接寻址方式

(1)直接寻址的空间有片内数据存储器的直接地址direct,它包括00H—7FH中的数据区及80H—FFH中的SFR。

(2)直拉寻址方式的操作指令直接把地址作为操作数来运行,既可作为源操作数,也可作为目的操作数如:

MOV50H,60H MOVDPH,40H INC60H3.间接寻址方式(1)间接寻址的地址空间有片内数据存储器的00H—FFH和片外数据存储器的0000H—FFFFH。(2)间接寻址的寄存器有Ri和DPTR,间接寻址时前面加@符号(3)间接寻址时,寄存器中的内容是操作数的地址如:

MOVR0,#30H MOV A,@R0 MOV DPTR,#0FFFH MOVX A,@DPTR4.位寻址方式

(1)位寻址的位地址在RAM的20H—2FH单元的128个位和SFR中可位寻址的位单元

(2)进位位C作为位操作的位累加器

(3)在位寻址操作中,位单元可以使用地址编号或位地址名, 如:

SETB TR0 CLR 00H ANL C,5FH;将5FH中的位状态与进位位;C相与,结果在C中5.立即寻址方式

(1)常数用来参与指令操作,一般用#标记作前缀

(2)立即数在寻址操作中只能作源操作数如:

MOV A,#30H MOV DPTR,#2FFFH ANL A,#0F4H6.基址变址寻址方式

(1)基址变址寻址是一种间接寻址方式,PC和DPTR可作为基址地址,A作为变量地址

(2)共有三条指令:

MOVC A,@A+DPTR MOVC A,@A+PC JMP @A+DPTR7.相对寻址方式

(1)相对寻址中,相对地址rel是一个8位的地址偏移量,是相对于转移指令下一条指令第一个代码的地址偏移量,为-128—+127

(2)使用中应注意rel的范围不要超出

JZ LOOP

DJNE R0,DISPLAY3.2.1指令的分类图解按指令的操作功能,80C51单片机由数据传送、算术操作、逻辑操作、程序转移和位操作指令组成,共有111条指令。指令图解的标记符号说明:

箭头:表示操作数从源数到目的操作数,双箭头表示源操作数与目的操作数可互换,箭头上标有指令助记符

圆框:

为累加器A或位累加器C

矩形框:

为指令操作数的空间

虚线矩形框:

为立即数#data3.2指令系统分类与速解3.2.2指令系统速解表

指令系统速解表

指令的分类图解3.3指令的应用例子3.3指令的应用例子例1:七段LED数码管显示程序1.请区别汇编指令、指令代码、指令周期、指令长度。2.80C51指令系统有哪些寻址方式,相应的空间在何处?3.片内RAM20H-2FH的128个位地址与直接地址00H-7FH形式完全相同,如何在指令中区分出位寻址操作和直接地址操作?4.什么是源操作数,什么是目的操作数?通

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论