第3章 80C51系列单片机指令系统 本章要点讲课教案

上传人:yuzo****123 文档编号:137853237 上传时间:2020-07-12 格式:PPT 页数:31 大小:465.50KB
返回 下载 相关 举报
第3章 80C51系列单片机指令系统 本章要点讲课教案_第1页
第1页 / 共31页
第3章 80C51系列单片机指令系统 本章要点讲课教案_第2页
第2页 / 共31页
第3章 80C51系列单片机指令系统 本章要点讲课教案_第3页
第3页 / 共31页
第3章 80C51系列单片机指令系统 本章要点讲课教案_第4页
第4页 / 共31页
第3章 80C51系列单片机指令系统 本章要点讲课教案_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《第3章 80C51系列单片机指令系统 本章要点讲课教案》由会员分享,可在线阅读,更多相关《第3章 80C51系列单片机指令系统 本章要点讲课教案(31页珍藏版)》请在金锄头文库上搜索。

1、第3章 80C51系列单片机指令系统,本章要点,80C51指令的基本格式 80C51指令功能分类 指令系统中的常用符号 80C51指令系统的七种寻址方式 数据传送类指令 算术运算类指令 逻辑运算及移位指令 位操作类指令 控制转移类指令,51系列单片机指令集含有111条指令,每条指令在执行时要花去一定的时间,以机器周期为单位。按指令执行时间分类: 单周期(64条);双周期(45条);4周期(2条),按指令的功能分类,可分为5大类: 数据传送类(29条);算术运算类(24条) 逻辑运算及移位类(24);控制转移类(17条) 位操作类(17条),每条指令在程序存储器ROM中占据一定的空间,以字节为单

2、位。按指令所占字节数分类: 单字节(49条);双字节(46条);3字节(16条),3-1 指令系统基本概念,标号:操作码 操作数;注释,一、 指令基本格式,标号:操作码 目的操作数,源操作数;注释,START:MOV A,#30H ;将立即数30H传送至A中, 操作码:指令的助记符。, 它代表了指令的操作功能。, 操作码是指令的必需部分, 是指令的核心,不可缺少。, 操作数:指出了指令的操作对象。,操作数可以是具体的数据, 也可以是数据的地址; 还可以是符号常量或符号地址。,操作数可分为目的操作数和源操作数, 操作数的个数可以是03个操作数,之间用“,” 号分割。, 注释:指令功能说明。, 注

3、释属于非必需项,是为便于阅读,对指令功能作的说明和注解。, 注释必须以“;”开始。,二、 指令分类,80C51共有111条指令。,按指令长度分类: 可分为1字节、2字节和3字节指令。,按指令执行时间分类: 可分为1机周、2机周和4机周指令。,按指令功能分类: 数据传送类、 算术运算类、 逻辑运算类、 位操作类和、 控制转移类等 共5大类指令。,三、 指令系统中的常用符号,R当前选中的寄存器组中的寄存器 R0R7之一。n07,(2)Ri当前选中的寄存器组中可作为地址指针 的寄存器R0、R1。0、1。,(3) #:立即数符。 MOV A,#30H; #data:8位立即数; MOV DPTR,#2

4、000H;#data16:16位立即数。,(4) direct:8位直接地址 MOV A,30H 代表内RAM的地址: 00H7FH或SFR的80HFFH 。,(5) addr11:11位目的地址。 addr16:16位目的地址。,(6) rel:带符号的8位偏移地址。 SJMP rel; 用于转移指令,其范围是相对于下一条指令首地址的-128+127个字节范围内。,(7) bit:位地址。 MOV C,20H; SETB ACC.7 代表片内RAM中的可寻址位00H7FH及SFR中的可寻址位。,(8) :间接寻址符间接寻址中间寄存器的的前缀标志 MOV A,R0 如Ri,DPTR,A+PC,

5、A+DPTR。,(9) C:进位标志位。 布尔累加器或位累加器,(11)(X)由X指定的寄存器或地址单元中的内容,(10) /:加在位地址的前面。表示对该位先求反,然后再参与操作。但不影响该位的值。,(12)(X)由X寄存器的内容作为地址的存储单元的内容,(13)$本条指令的起始地址或首地址,3.2 寻址方式,寻址就是寻找操作数的地址。,七种寻址方式,一条指令可能含多种寻址方式,立即寻址 直接寻址 寄存器寻址 寄存器间接寻址 变址寻址(基址寄存器+变址寄存器间接寻址) 相对寻址 位寻址,【例】,一、 立即寻址,立即寻址是直接给出操作数,操作数前有立即数符“ # ”。,MOV A, #30H ;

6、将立即数30H传送至A中 MOV DPTR,#5678H ;将立即数5678H传送至DPTR,注意:符号“#”表明其后跟的是立即数, 立即数就是数字量本身。,二、直接寻址,MOV A,3AH ;将内RAM 3AH单元中的数据传送 至A中 MOV A,P0 ;将特殊功能寄存器P0口中的数据 传送至A中,直接寻址是给出操作数的直接地址。 直接寻址方式可以访问以下存储空间: 内RAM128B和 特殊功能寄存器。,【例】,说明:3AH和P0是以direct形式出现的直接地址,注意: 1)内RAM低128字节单元,在指令中直接地址以单元地址的形式给出 2)访问特殊功能寄存器SFR只能采用直接寻址方式。

7、3)特殊功能寄存器直接地址还可以用其寄存器的符号表示. 例:MOV A ,P0 ; MOV A ,80H; 这两个语句功能完全一样,三、 寄存器寻址,MOV A,R0 ;将R0中的数据传送至A中 MOVR2,A;,寄存器寻址:寄存器的内容作为操作数。 规定的寄存器有: 工作寄存器R0R7 累加器A 双字节AB 数据指针DPTR 指令中以符号的名称来表示寄存器,【例】,四、 寄存器间接寻址,RO中的值是3AH,内部RAM 3AH单元中的内容是65H,执行完下面的指令后A 中的值是多少? MOV A,R0 ;将以R0中内容为地址的存储单元中的 数据传送至A中,寄存器中的内容是一个RAM地址,由该地

8、址单元寻址到所需的操作数。间接寻址用间址符“”作为前缀。,【例】,注意: 1)“间接”表示某寄存器中的“内容”只是一个“单元地址”,这个地址单元中存放的数据才是要找的“操作数”。 2)MCS-51规定只有R0,R1,DPTR作为间址寻址的寄存器 3)内部RAM的低128个单元采用R0,R1作为间址寄存器,4)外部RAM的低128个单位 即可以采用R0、R1寻址,也可以采用DPTR寻址。 外部字节地址大于7FH的RAM空间只可以采用DPTR寻址,五、 变址寻址:用于读ROM数据操作,在变址寻址中: 操作数地址基址变址,基址寄存器:以16位的地址指针寄存器DPTR 或 16位的PC寄存器 变址寄存

9、器:累加器 A 两者中的“内容”之和形成一个16位的“地址”,该“地址”所指的存储单元中的内容才是操作数。,MOVC A,A+DPTR,【例】,;将A的内容与DPTR内容相加,得到一个新地址,从该地址ROM中读取数据送入A中。,MOVC A,A+PC ;,功能:访问程序存储器中的数据表,当前PC值加上指令中规定的偏移量 rel,构成转移地址送给PC。功能:可以修改PC的值,可以实现程序的转移例: 2000H:SJMP 26H ; (PC)=2000H+02H+26H操作:将当前16位PC值 + rel跳转到的目的地址 PC,六、 相对寻址,注意: 1)“当前PC值”指程序中下一条指令所在的首地

10、址,是一个16位数; 2)符号“rel”表示“偏移量”,是一个带符号的单字节数,范围是:-128+127(80H7FH),在实际编程中,“rel” 通常用标号代替,例:2000H:SJMP 08H ; 原PC值为2000H;执行这条指令后的当前PC值 为2002H,rel为08H。2002H+08H=200AH,转移目 的地址为200AH,程序就跳转至200AH去执行了。,在实际编程中,“rel” 通常用标号代替 例:SJMP LOOP1,右图为SJMP 08H相对寻址示意图。,;将位地址07H(字节地址20H中最 高位)中的数据传送至进位位CY。,七、 位寻址,位寻址是对内RAM和特殊功能寄存器中的可寻址位进行操作的寻址方式。,MOV C,07H,指令中直接给出了操作数所在的位地址。 例: CLR P1.0 ;(P1.0) 0 SETB ACC.7 ;(ACC.7) 1 CPL C ;CY /( CY ),提示:位地址里的数据只可能是一个 0 或 1,1)位地址; RAM中字节地址为20H2FH的各位 SFR中可以位寻址的11个寄存器。,3)位名称; SFR中可以位寻址的各位 CYAC,4)寄存器符号+位序号; P1.0 ACC.0 等,2)单元地址+位序号; 25H.5等,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号