单片机原理与接口技术80C51单片机指令系统.ppt
《单片机原理与接口技术80C51单片机指令系统.ppt》由会员分享,可在线阅读,更多相关《单片机原理与接口技术80C51单片机指令系统.ppt(67页珍藏版)》请在三一办公上搜索。
1、第3章 80C51 单片机指令系统,3.1 单片机指令系统概述3.2 80C51 单片机指令寻址方式3.3 80C51 单片机指令分类介绍,3.1 单片机指令系统概述,指令:规定计算机基本操作的语句或命令。指 令通常有两个组成部分:操作码和操作数。操作码:用于规定指令进行什么操作。操作数:指令操作的对象,可以是具体的数据、数据 的地址或符号。例如:MOV A,#20H,指令系统:一个单片机所能执行的指令集合。指令系统由单片机生产厂商定义的,由CPU 的内部结构决定的。不同的单片机,其指令 系统不尽相同。,80c51指令中使用的符号的意义作简要说明:,Rn(n=07):表示当前工作寄存器R0R7
2、中的任一个寄存 器。Ri:可用作间接寻址的寄存器,只能是R0,R1两个寄存器,i=0,1。direct:8位直接地址,在指令中表示直接寻址方式,寻址范围 256个单元。#data:8位立即数。#data16:16位立即数。addr16:表示16位目的地址,主要用于LCALL和LJMP指令 中。addr11:表示11位目的地址,主要用于ACALL和AJMP指令 中。,3.1 单片机指令系统概述,rel:相对转移指令中的偏移量,为8位带符号补码。DPTR:数据指针。bit:内部RAM(包括专用寄存器)中的直接寻址位。A:累加器 ACC:直接寻址方式的累加器。B:寄存器B C:进位标志位。也称为累加
3、位。/:加在位地址的前面,表示对该位状态取反。:间接寻址寄存器的前缀标志。(X):某寄存器或某单元中的内容。(X):由“X”间接寻址单元中的内容。:箭头左边的内容被箭头右边的内容所取代。,3.1单片机指令系统概述,3.2 80C51 单片机指令寻址方式,寻址方式,通常是指某一个CPU指令系统中规定的寻找操作数所在地址的方式,或者说通过什么样的方式找到操作数。寻址方式的方便与快捷是衡量CPU性能的一个重要方面,MCS51单片机有七种寻址方式。,1.寄存器寻址方式定义:操作数在寄存器中,只要指定了寄存器就能得到操作数。例:MOV A,R0特点:由指令指出某一个寄存器的内容作为操作数。存 放操作数的
4、寄存器在指令代码中不占据单独的一 个字节,而是嵌入(隐含)到操作码字节中。寻址范围:四组通用寄存器Rn(R0R7)、部分专用寄存器(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 单片机指令寻址方式,2.直接寻址方式定义:指令中操作数直接以存储单元地址的形式给出。例如:MOV A,3AH特点:指令中含有操作数的地址。该地址指出了参与操 作的数据所在的字节单元地址或位地址。计算机 执行它们时便可根据直接地址找到所需要的操作数。只能使用8位二进制数表示的地址。寻址范围:片内RAM
5、区(低128字节)、专用寄存器。,3.2 80C51 单片机指令寻址方式,常见形式:MOV A,52H;把片内RAM字节地址52H单元的内容送累加器A中。MOV 52H,A;把A的内容传送给片内RAM的52H单元中。MOV 50H,60H;把片内RAM字节地址60H单元的内容送到50H单元中。MOV IE,#40H;把立即数40H送到中断允许寄存器 IE。IE为专用功能寄存器,其字节地址为0A8H。该指令等价于MOV 0A8H,#40H。INC 60H;将地址60H单元中的内容自加1。,3.2 80C51 单片机指令寻址方式,直接寻址方式示意图,3.2 80C51 单片机指令寻址方式,3.寄存
6、器间接寻址方式定义:指令给出的寄存器中存放的是操作数据的单元地址。这种寻址方式称为寄存器间接寻址。如:MOV A,R0,特点:指令给出的寄存器中存放的是操作数地址。寄存器间 接寻址是一种二次(间接)寻找操作数的寻址方式,寄存器前边必须加前缀符号“”。不能用于寻址特殊 功能寄存器SFR。,3.2 80C51 单片机指令寻址方式,例如:MOV A,R0例如:MOV DPTR,#3456H;DPTR3456H MOVX A,DPTR;A(DPTR),寄存器间接寻址方式示意图,3.2 80C51 单片机指令寻址方式,寻址范围:内部RAM低128B(只能使用R0或R1作间址寄存器)外部RAM(使用DPT
7、R作间址寄存器)对于外部低256单元RAM的访问,除可以使用DPTR外,还可以使用R0或R1作间址寄存器。堆栈操作指令(PUSH 和POP)为 SP作间址寄存器的间址寻址方式。,3.2 80C51 单片机指令寻址方式,4.立即寻址方式定义:将立即参与操作的数据直接写在指令中,这种寻址方式称为立即寻址。立即数只能作为源操作数,不能当作目的操作数。例如 MOV A,#3AHMOV DPTR,#data16特点:指令中直接含有所需的操作数。该操作数可以是8位的,也可以是16位的,常常处在指令的第二字节和第三字节的位置上。立即数通常使用#data或#data16表示,在立即数前面加“#”标志,用以和直
8、接寻址中的直接地址(direc或bit)相区别。,3.2 80C51 单片机指令寻址方式,例如:MOV A,#52H;A52H MOV DPTR,#5678H;DPTR5678H,立即寻址示意图,3.2 80C51 单片机指令寻址方式,5.变址寻址方式 定义:这种寻址方式用于访问程序存储器中的数据表格,以基址寄存器(DPTR或PC)的内容为基本地址,加 上变址寄存器A的内容形成16位的地址,访问程序 存储器中的数据表格。这种寻址方式称为基址加变 址寄存器间接寻址,简称为变址寻址。例如:MOVC A,A+DPTR;A(A)+(DPTR)MOVC A,A+PC JMP DPTR 仅有3条变址寻址指
9、令。,3.2 80C51 单片机指令寻址方式,特点:指令操作码中隐含作为基址寄存器用的DPTR(或PC)和作为变址用的累加器A。在执行变址寻址指令时,80c51单片机先把基地址(DPTR或PC 的内容)和地址偏移量(A的内容)相加,以形成操作数地址,再由操作数地址找到操作数,并完成相应的操作。变址寻址方式是单字节指令。,3.2 80C51 单片机指令寻址方式,寻址范围:只能对程序存储器ROM进行寻址,主要用于查表性质的访问。,3.2 80C51 单片机指令寻址方式,6.位寻址方式 MCS-51单片机中设有独立的位处理器。位操作指令能对内部RAM中的位寻址区(20H2FH)和某些有位地址的特殊功
10、能寄存器进行位操作。定义:指令中给出的操作数是一个可单独寻址的位地址,这 种寻址方式称为位寻址方式。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 单片机指令寻址方式,寻址范围:内部RAM中的位寻址区 单元地址为20H2FH,共16个单元128位,位地址是00H 7FH。两种表示方法:一种是位地址;另一种是单元地址加位。专用寄存器的可寻址位(4种表
11、示方法)直接使用位地址。例如PSW寄存器位5地址为0D5H。位名称表示方法。例如PSW寄存器位5是F0标志位,则可使 用F0表示该位。单元地址加位数的表示方法。例如PSW寄存器位5,表示为 0D0H.5。专用寄存器符号加位数的表示方法。例如PSW寄存器的位5,表示为PSW.5,3.2 80C51 单片机指令寻址方式,7.相对寻址方式(解决程序转移),定义:将程序计数器PC的当前值(取出本条指令后的PC值)与指令第二个字节给出的偏移量(rel)相加,形成新的转移目标地址。称为相对寻址方式。例如:SJMP rel;(PC)(PC)+2+rel特点:目的地址指令地址指令字节数偏移量 相对寻址方式是为
12、实现程序的相对转移而设计的,为相对转移指令所使用,其指令码中含有相对地址偏移量,能生成浮动代码。寻址范围:只能对程序存储器ROM进行寻址。相对地址偏移量(rel)是一个带符号的8位二进制补码,其取值范围为128127(以PC为中间的256个字节范围)。rel可以是标号。,3.2 80C51 单片机指令寻址方式,3.3 80C51 单片机指令分类介绍,MCS-51指令系统有42种助记符,代表了33种功能,指令助记符与各种可能的寻址方式相结合,构成80C51单片机的111条指令。这些指令按功能分成5大类:数据传送类(29条)算术运算类(24条)逻辑运算及移位类(24条)控制转移类(17条)位操作类
13、(17条),3.3.1 数据传送类指令,数据传送类指令一般的操作是把源操作数传送到指令所指定的目标地址。指令执行后,源操作数保持不变,目的操作数为原操作数所替代。数据传送类指令用到的助记符有:MOV,MOVX,MOVC,XCH,XCHD,PUSH,POP,SWAP。数据一般传送指令的助记符“MOV”表示:格式:MOV 目的操作数,源操作数 功能:目的操作数(源操作数中的数据)源操作数可以是:A、Rn、direct、Ri、#data 目的操作数可以是:A、Rn、direct、Ri数据传送指令一般不影响标志。,3.3 80C51 单片机指令分类介绍,1 以累加器为目的操作数的内部数据传送指令,3.
14、3 80C51 单片机指令分类介绍,2 数据传送到工作寄存器Rn的指令,3.3 80C51 单片机指令分类介绍,3数据传送到内部RAM单元或特殊功能寄存器SFR的指令,3.3 80C51 单片机指令分类介绍,片内数据RAM及寄存器的数据传送指令MOV、PUSH和POP共18条,如图所示。,3.3 80C51 单片机指令分类介绍,例1:若(30H)=35H,(R1)=70H,说明指令 MOV R1,30H 的结果 解:执行后,直接地址70H(即寄存器R1的内容)的内容为35H,30H与R1的内容不变。例2:已知(70H)=60H,(60H)=20H,P1=0B7H,执行下面指令,说明结果。MOV
15、 R0,#70H;R0-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)=70H,3.3 80C51 单片机指令分类介绍,例3 指出下面指令的错误:Mov R1,R3 Mov Rn,Ri Mov A,R3解:Mov R1,R3 无寄存器之间直接传送指令 Mov Rn,Ri,无寄存器间接寻址指令 Mov A,R3,间接寻址只能是R1或R0,3.3 80C51 单片机指令分类介绍,2.外部数据存储器读/写指令(1)Ri作
16、间址寄存器的外部RAM单元读/写指令 MOVX A,Ri(Ri间接寻址的外部RAM单元读)MOVX Ri,A(Ri间接寻址的外部RAM单元写)(2)DPTR作间址寄存器的外部RAM单元读/写指令 MOVX A,DPTR(DPTR间接寻址的外部RAM单元读)MOVX DPTR,A(DPTR间接寻址的外部RAM单元写)3.程序存储器读指令组(只能读不能写,单字节指令)MOVC A,A+DPTR(程序存储器读)MOVC A,A+PC(程序存储器读)注意:读写程序存储器时,只能通过A,3.3 80C51 单片机指令分类介绍,片外数据存储器数据传送指令MOVX共4条,如图:,程序存储器查表指令MOVC共
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 接口 技术 80 C51 指令系统
链接地址:https://www.31ppt.com/p-5937848.html