(大学课件)单片机原理与接口技术-80C51-单片机指令系统.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《(大学课件)单片机原理与接口技术-80C51-单片机指令系统.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学课件 大学 课件 单片机 原理 接口 技术 80 C51 指令系统
- 资源描述:
-
1、第第3章章 80C51 单片机指令系统单片机指令系统 3.1 单片机指令系统概述 3.2 80C51 单片机指令寻址方式 3.3 80C51 单片机指令分类介绍http:/ 单片机指令系统概述单片机指令系统概述 指令:指令:规定计算机基本操作的语句或命令。指规定计算机基本操作的语句或命令。指 令通常有两个组成部分:操作码和操作数。令通常有两个组成部分:操作码和操作数。操作码:用于规定指令进行什么操作。操作码:用于规定指令进行什么操作。操作数:指令操作的对象,可以是具体的数据、数据操作数:指令操作的对象,可以是具体的数据、数据 的地址或符号。的地址或符号。例如:例如:MOV A,#20H,指令系
2、统指令系统:一个单片机所能执行的指令集合。一个单片机所能执行的指令集合。指令系统由单片机生产厂商定义的,指令系统由单片机生产厂商定义的,由由CPU 的内部结构决定的。不同的单片机,其指令的内部结构决定的。不同的单片机,其指令 系统不尽相同。系统不尽相同。http:/ 器。器。Ri:可用作间接寻址的寄存器,只能是:可用作间接寻址的寄存器,只能是R0,R1两个寄存器,两个寄存器,i=0,1。direct:8位直接地址,在指令中表示直接寻址方式,寻址范围位直接地址,在指令中表示直接寻址方式,寻址范围 256个单元。个单元。#data:8位立即数。位立即数。#data16:16位立即数。位立即数。ad
3、dr16:表示:表示16位目的地址,主要用于位目的地址,主要用于LCALL和和LJMP指令指令 中。中。addr11:表示:表示11位目的地址,主要用于位目的地址,主要用于ACALL和和AJMP指令指令 中。中。3.1 单片机指令系统概述单片机指令系统概述http:/ rel:相对转移指令中的偏移量,为:相对转移指令中的偏移量,为8位带符号补码。位带符号补码。DPTR:数据指针。:数据指针。bit:内部:内部RAM(包括专用寄存器)中的直接寻址位。(包括专用寄存器)中的直接寻址位。A:累加器累加器 ACC:直接寻址方式的累加器。:直接寻址方式的累加器。B:寄存器寄存器B C:进位标志位。也称为
4、累加位。进位标志位。也称为累加位。/:加在位地址的前面,表示对该位状态取反。加在位地址的前面,表示对该位状态取反。:间接寻址寄存器的前缀标志。间接寻址寄存器的前缀标志。(X):某寄存器或某单元中的内容。):某寄存器或某单元中的内容。(X):由:由“X”间接寻址单元中的内容。间接寻址单元中的内容。:箭头左边的内容被箭头右边的内容所取代。箭头左边的内容被箭头右边的内容所取代。3.1单片机指令系统概述单片机指令系统概述http:/ 80C51 单片机指令寻址方式单片机指令寻址方式 寻址方式,通常是指某一个寻址方式,通常是指某一个CPU指令系统中指令系统中规定的寻找操作数所在地址的方式,或者说通过规定
5、的寻找操作数所在地址的方式,或者说通过什么样的方式找到操作数。寻址方式的方便与快什么样的方式找到操作数。寻址方式的方便与快捷是衡量捷是衡量CPU性能的一个重要方面,性能的一个重要方面,MCS51单单片机有七种寻址方式。片机有七种寻址方式。http:/ A,R0特点:特点:由指令指出某一个寄存器的内容作为操作数。存由指令指出某一个寄存器的内容作为操作数。存 放操作数的寄存器在指令代码中放操作数的寄存器在指令代码中不占据单独的一不占据单独的一 个字节,而是嵌入(隐含)到操作码字节中个字节,而是嵌入(隐含)到操作码字节中。寻址范围:寻址范围:四组通用寄存器四组通用寄存器Rn(R0R7)、部分专用)、
6、部分专用寄存器(寄存器(A,B,DPTR,Cy)。)。MOV A,Rn;A(Rn)其中其中n为为07之一,之一,Rn是工作寄存是工作寄存 器。器。MOV Rn,A;Rn(A)MOV B,A;B(A)3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ A,3AH特点:特点:指令中含有操作数的指令中含有操作数的地址地址。该地址指出了参与操。该地址指出了参与操 作的数据所在的字节单元地址或位地址。计算机作的数据所在的字节单元地址或位地址。计算机 执行它们时便可根据直接地址找到所需要的操作数。执行它们时便可根据直接地址找到所需要的操作数。只能使用只能使用8位二进制数表示的地址。位二进
7、制数表示的地址。寻址范围:寻址范围:片内片内RAM区(低区(低128字节)、专用寄存器。字节)、专用寄存器。3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ A,52H ;把片内;把片内RAM字节地址字节地址52H单元的内单元的内容送累加器容送累加器A中。中。MOV 52H,A ;把;把A的内容传送给片内的内容传送给片内RAM的的52H单元中。单元中。MOV 50H,60H;把片内;把片内RAM字节地址字节地址60H单元的内单元的内容送到容送到50H单元中。单元中。MOV IE,#40H;把立即数;把立即数40H送到中断允许寄存器送到中断允许寄存器 IE。IE为专用功能寄存
8、器,其字节为专用功能寄存器,其字节地址为地址为0A8H。该指令等价于该指令等价于MOV 0A8H,#40H。INC 60H ;将地址;将地址60H单元中的内容自加单元中的内容自加1。3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ 3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ A,R0特点:特点:指令给出的寄存器中存放的是操作数地址。寄存器间指令给出的寄存器中存放的是操作数地址。寄存器间 接寻址是一种二次(间接)寻找操作数的寻址方式,接寻址是一种二次(间接)寻找操作数的寻址方式,寄存器前边必须加前缀符号寄存器前边必须加前缀符号“”。不能用于寻址特殊不
9、能用于寻址特殊 功能寄存器功能寄存器SFR。3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ AMOV A,R0 R0例如:例如:MOV DPTRMOV DPTR,#3456H#3456H ;DPTRDPTR3456H3456H MOVX A MOVX A,DPTR DPTR ;A A(DPTRDPTR)寄存器间接寻址方式示意图寄存器间接寻址方式示意图 3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ 和和POP)为)为 SP作间址寄存器的作间址寄存器的间址寻址方式。间址寻址方式。3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ MO
10、V A,#3AHMOV DPTR,#data16特点:特点:指令中直接含有所需的操作数。该操作数可以是指令中直接含有所需的操作数。该操作数可以是8位的,也可以是位的,也可以是16位的,常常处在指令的第二字节和第位的,常常处在指令的第二字节和第三字节的位置上。立即数通常使用三字节的位置上。立即数通常使用#data或或#data16表表示,在立即数前面加示,在立即数前面加“#”标志,用以和直接寻址中的直标志,用以和直接寻址中的直接地址(接地址(direc或或bit)相区别。)相区别。3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ A,#52H ;A52H MOV DPTR,#
11、5678H ;DPTR5678H 立即寻址示意图 3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ 5.变址寻址方式变址寻址方式 定义:定义:这种寻址方式用于访问程序存储器中的数据表格,这种寻址方式用于访问程序存储器中的数据表格,以以基址寄存器(基址寄存器(DPTR或或PC)的内容为基本地址,加的内容为基本地址,加 上变址寄存器上变址寄存器A的内容形成的内容形成16位的地址,访问程序位的地址,访问程序 存储器中的数据表格。这种寻址方式称为基址加变存储器中的数据表格。这种寻址方式称为基址加变 址寄存器间接寻址,简称为变址寻址。址寄存器间接寻址,简称为变址寻址。例如:例如:MO
12、VC A,A+DPTR ;A(A)+(DPTR)MOVC A,A+PC JMP DPTR 仅有仅有3条变址寻址指令。条变址寻址指令。3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ 特点:特点:指令操作码中隐含作为基址寄存器用的指令操作码中隐含作为基址寄存器用的DPTR(或(或PC)和作为变址用的累加器)和作为变址用的累加器A。在执行变址寻址指令时,。在执行变址寻址指令时,80c51单片机先把基地址(单片机先把基地址(DPTR或或PC 的内容)和地址偏的内容)和地址偏移量(移量(A的内容)相加,以形成操作数地址,再由操作数地的内容)相加,以形成操作数地址,再由操作数地址找到
13、操作数,并完成相应的操作。址找到操作数,并完成相应的操作。变址寻址方式是单字节变址寻址方式是单字节指令。指令。3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ 80C51 单片机指令寻址方式单片机指令寻址方式http:/ 6.位寻址方式位寻址方式 MCS-51单片机中设有独立的位处理器。位操作指令单片机中设有独立的位处理器。位操作指令能对内部能对内部RAM中的位寻址区(中的位寻址区(20H2FH)和某些有位地)和某些有位地址的特殊功能寄存器进行位操作。址的特殊功能寄存器进行位操作。定义:定义:指令中给出的操作数是一个可单独寻址的位地址,这指令中给出的操作数是一个可单独寻址的
14、位地址,这 种寻址方式称为位寻址方式。种寻址方式称为位寻址方式。MOV C,3AH特点:特点:位寻址是直接寻址方式的一种,其特点是对位寻址是直接寻址方式的一种,其特点是对8位二进位二进 制数中的某一位的地址进行操作。制数中的某一位的地址进行操作。例如:例如:SETB TR0 ;TR01 CLR 00H ;(00H)0 MOV C,57H ;将;将57H位地址的内容传送到位地址的内容传送到C中中 ANL C,5FH;将;将5FH位与进位位位与进位位C相与,结果在相与,结果在C中中 3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ 单元地址为单元地址为20H2FH,共,共16个
15、单元个单元128位,位地址是位,位地址是00H 7FH。两种表示方法:一种是位地址;另一种是单元地址加位。两种表示方法:一种是位地址;另一种是单元地址加位。v专用寄存器的可寻址位(专用寄存器的可寻址位(4种表示方法)种表示方法)直接使用位地址。例如直接使用位地址。例如PSW寄存器位寄存器位5地址为地址为0D5H。位名称表示方法。例如位名称表示方法。例如PSW寄存器位寄存器位5是是F0标志位,则可使标志位,则可使 用用F0表示该位。表示该位。单元地址加位数的表示方法。例如单元地址加位数的表示方法。例如PSW寄存器位寄存器位5,表示为,表示为 0D0H.5。专用寄存器符号加位数的表示方法。例如专用
16、寄存器符号加位数的表示方法。例如PSW寄存器的位寄存器的位5,表示为表示为PSW.5 3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ rel;SJMP rel;(PCPC)(PCPC)+2+rel+2+rel特点:特点:目的地址指令地址指令字节数偏移量目的地址指令地址指令字节数偏移量 相对寻址方式是为实现程序的相对转移而设计的,为相相对寻址方式是为实现程序的相对转移而设计的,为相对转移指令所使用,其指令码中含有相对地址偏移量,对转移指令所使用,其指令码中含有相对地址偏移量,能生成浮动代码。能生成浮动代码。寻址范围:寻址范围:只能对程序存储器只能对程序存储器ROMROM进行
17、寻址。相对地址偏移进行寻址。相对地址偏移量(量(rel rel)是一个带符号的)是一个带符号的8 8位二进制补码,其取值范围位二进制补码,其取值范围为为 128128127127(以(以PCPC为中间的为中间的256256个字节范围)。个字节范围)。relrel可以是标号。可以是标号。3.2 80C51 单片机指令寻址方式单片机指令寻址方式http:/ 80C51 单片机指令分类介绍单片机指令分类介绍 MCS-51指令系统有指令系统有42种助记符,代表了种助记符,代表了33种种功能,指令助记符与各种可能的寻址方式相结合,功能,指令助记符与各种可能的寻址方式相结合,构成构成80C51单片机的单片
18、机的111条条指令指令。这些指令按功能。这些指令按功能分成分成5大大类:类:数据传送类(数据传送类(29条)条)算术运算类(算术运算类(24条)条)逻辑运算及移位类(逻辑运算及移位类(24条)条)控制转移类(控制转移类(17条)条)位操作类位操作类(17条)条)http:/ 数据传送类指令数据传送类指令 数据传送类指令一般的操作是把源操作数传送到数据传送类指令一般的操作是把源操作数传送到指令所指定的目标地址。指令执行后,源操作数保持不指令所指定的目标地址。指令执行后,源操作数保持不变,目的操作数为原操作数所替代。变,目的操作数为原操作数所替代。数据传送类指令用到的助记符有:数据传送类指令用到的
19、助记符有:MOVMOV,MOVXMOVX,MOVCMOVC,XCHXCH,XCHDXCHD,PUSHPUSH,POPPOP,SWAPSWAP。数据一般传送指令的助记符数据一般传送指令的助记符“MOV”MOV”表示表示:格式:格式:MOV MOV 目的操作数目的操作数,源操作数源操作数 功能:目的操作数功能:目的操作数(源操作数中的数据)(源操作数中的数据)源操作数可以是:源操作数可以是:A A、RnRn、directdirect、RiRi、#data#data 目的操作数可以是:目的操作数可以是:A A、RnRn、directdirect、RiRi数据传送指令一般不影响标志。数据传送指令一般不
20、影响标志。3.3 80C51 单片机指令分类介绍单片机指令分类介绍http:/ 以累加器为目的操作数的内部数据传送指令 MOVA,Rn;A(Rn)MOVA,direct;A(direct)MOVA,Ri;A(Ri)MOVA,#data;Adata3.3 80C51 单片机指令分类介绍单片机指令分类介绍http:/ 数据传送到工作寄存器Rn的指令 MOVRn,A;Rn(A)MOVRn,direct;Rn(direct)MOVRn,#data;Rndata3.3 80C51 单片机指令分类介绍单片机指令分类介绍http:/ 3数据传送到内部数据传送到内部RAMRAM单元或特殊功能寄存器单元或特殊功
21、能寄存器SFRSFR的指令的指令 MOVdirect,A;direct(A)MOVdirect,Rn;direct(Rn)MOVdirect1,direct2;direct1(direct2)MOVdirect,Ri;direct(Ri)MOVdirect,#data;direct#dataMOVRi,A;(;(Ri()()MOVRi,direct;(;(Ri)(direct)MOVRi,#data;(;(Ri)dataMOVDPTR,#data16;DPTRdata163.3 80C51 单片机指令分类介绍单片机指令分类介绍http:/ 片内数据片内数据RAM及寄存器的数据传送指令及寄存器的
22、数据传送指令MOV、PUSH和和POP共共18条,如图所示。条,如图所示。DPTRRiARn#datadirectDPTRMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVPUSHPOP3.3 80C51 单片机指令分类介绍单片机指令分类介绍http:/ MOV R1,30H 的结果的结果 解:执行后,直接地址解:执行后,直接地址70H(即寄存器(即寄存器R1的内容)的内容的内容)的内容为为35H,30H与与R1的内容不变。的内容不变。例例2:已知(:已知(70H)=60H,(60H)=20H,P1=0B7H,执行下执行下面指令,说明结果。面指令,说明结果。MOV R0,#70H;R
23、0-70H MOV A,R0;A-60H MOV R1,A ;R1-60H MOV B,R1;B-20H MOV R0,P1;70H-0B7H 解:结果是解:结果是:(70H)=0B7H,(60H)=20H,B=20H (R1)=60H,(R0)=70H3.3 80C51 单片机指令分类介绍单片机指令分类介绍http:/ 指出下面指令的错误:指出下面指令的错误:Mov R1,R3 Mov Rn,Ri Mov A,R3解:解:Mov R1,R3 无寄存器之间直接传送指令无寄存器之间直接传送指令 Mov Rn,Ri,无寄存器间接寻址指令,无寄存器间接寻址指令 Mov A,R3,间接寻址只能是,间接
24、寻址只能是R1或或R03.3 80C51 3.3 80C51 单片机指令分类介绍单片机指令分类介绍http:/ 2.外部数据存储器读外部数据存储器读/写指令写指令(1)Ri作间址寄存器的外部作间址寄存器的外部RAM单元读单元读/写指令写指令 MOVX A,Ri(Ri间接寻址的外部间接寻址的外部RAM单元读单元读)MOVX Ri,A(Ri间接寻址的外部间接寻址的外部RAM单元写单元写)(2)DPTR作间址寄存器的外部作间址寄存器的外部RAM单元读单元读/写指令写指令 MOVX A,DPTR(DPTR间接寻址的外部间接寻址的外部RAM单元读单元读)MOVX DPTR,A(DPTR间接寻址的外部间接
25、寻址的外部RAM单元写单元写)3.程序存储器读指令组(只能读不能写,单字节指令)程序存储器读指令组(只能读不能写,单字节指令)MOVC A,A+DPTR(程序存储器读)(程序存储器读)MOVC A,A+PC(程序存储器读)(程序存储器读)注意:读写程序存储器时,只能通过注意:读写程序存储器时,只能通过A3.3 80C51 3.3 80C51 单片机指令分类介绍单片机指令分类介绍http:/ 片外数据存储器数据传送指令片外数据存储器数据传送指令MOVX共共4条,如图条,如图:DPTRRiAMOVXMOVX 程序存储器查表指令程序存储器查表指令MOVC共共2条,如图所示。条,如图所示。A+DPTR
展开阅读全文