第三章8051单片机指令系统.ppt
《第三章8051单片机指令系统.ppt》由会员分享,可在线阅读,更多相关《第三章8051单片机指令系统.ppt(77页珍藏版)》请在三一文库上搜索。
1、第三章 8051单片机指令系统,3.1 MCS-51指令系统的分类、格式及一般说明 3.2 寻址方式,学习目的及要求,熟悉指令、指令系统、机器语言、及汇编语言的概念; 熟悉8051汇编语言指令的格式; 掌握8051的七种寻址方式,并能实际应用;,MCS-51单片机指令系统有如下特点:,(1)指令执行时间快。 (2)指令短,约有一半的指令为单字节指令。 (3)用一条指令即可实现2个一字节的相乘或相除。 (4)具有丰富的位操作指令。 (5)可直接用传送指令实现端口的输入输出操作。,3.1 MCS-51指令系统的分类、格式及一般说明,3.1.1 指令分类 3.1.2 指令格式,返回本章首页,3.1.
2、1 指令分类,按指令功能,MCS-51指令系统分为数据传递与交换、算术运算、逻辑运算、程序转移、布尔处理操作、CPU控制等6类。 布尔处理操作类指令又称位操作指令。,返回本节,3.1.2 指令格式,在MCS-51指令中,一般指令主要由操作码、操作数组成。 指令格式为:操作码 目的操作数,源操作数 指令应具有以下功能: (1)操作码指明执行什么性质和类型的操作。例如,数的传送、加法、减法等。 (2)操作数指明操作的数本身或者是操作数所在的地址。 (3)指定操作结果存放的地址。,返回本节,8051指令系统中,有单字节、双字节或三字节指令,1.单字节指令:单字节指令中的8位二进制代码既包含操 作码的
3、信息,又包含操作数的信息。共49条。 2 .双字节指令:用一个字节表示操作码,另一个字节表示操作数或操作数所在的地址。共有条。 3.三字节指令:一个字节操作码,两个字节操作数。共有条。 单片机共有条指令。,3.2 寻址方式,寻址方式:就是寻找指令中操作数或操作数所在地址的方法。8051共有七中寻址方式。 3.2.1 立即寻址 3.2.2 直接寻址 3.2.3 寄存器寻址 3.2.4 寄存器间接寻址 3.2.5 变址寻址 3.2.6 相对寻址 3.2.7 位寻址 3.2.8 寻址空间及符号注释,返回本章首页,3.2.1 立即数寻址,指令中直接给出操作数的寻址方式。立即操作数用前面加有#号的8位或
4、16位数来表示。 例如:MOV A,# 60H;A60H MOV DPTR,# 3400H;DPTR3400H MOV 30H,# 40H ;30H单元40H 上述三条指令执行完后,累加器A中数据为立即数据60H,DPTR寄存器中数据为3400H,30H单元中数据为立即数40H。,返回本节,3.2.2 直接寻址,指令中直接给出操作数地址的寻址方式,能进行直接寻址的存储空间有SFR寄存器和片内RAM的128个单元。 例如:MOV A,P1; A(P1) 把SFR中P1口的内容送A。 MOV A,30H ;A(30H) 注意解释字段中加括号和不加括号的区别! 30H为直接给出的内部RAM的地址。,
5、返回本节,3.2.3 寄存器寻址,以通用寄存器的内容为操作数的寻址方式。通用寄存器指A、B 、DPTR以及R0R7 。 例如:MOV A,R0;A (R0) CLR A ;A0 INC DPTR;DPTRDPTR+1 ADD A,R5;A(A)+(R5),返回本节,3.2.4 寄存器间接寻址,以寄存器中内容为地址,以该地址中内容为操作数的寻址方式。间接寻址的存储器空间包括内部数据RAM和外部数据RAM。 能用于寄存器间接寻址的寄存器有R0,R1,DPTR,SP。其中R0、R1必须是工作寄存器组中的寄存器。SP仅用于堆栈操作。,例如:MOV R0,A ;内部RAM(R0)A 其指令操作过程示意图
6、如图3-1所示。 又如:MOVX DPTR,A; 外部RAM (DPTR)A 其指令操作过程示意图如图3-所示。,图3-1 MOV R0,A间接寻址示意图,片外RAM,2000H,DPTR,30H,A,2000H,30H,图- MOVX DPTR,A 间接寻址示意图,返回本节,3.2.5 变址寻址,是基址寄存器(A)+变址寄存器(PC或DPTR)的间接寻址。变址寻址只能对程序存储器中数据进行操作。由于程序存储器是只读的,因此变址寻址只有读操作而无写操作,在指令符号上采用MOVC的形式(如图3-4所示)。 例如:MOVC A, A+DPTR; A(A+DPTR) 又 如:MOVC A, A+PC
7、 ; A(A+PC) 这种寻址方式多用于查表操作。,图3-4 变址寻址示意图,返回本节,3.2.6 相对寻址,以当前程序计数器PC的内容为基础,加上指令给出的一字节补码数(偏移量)形成新的PC值的寻址方式。 相对寻址用于修改PC值,主要用于实现程序的分支转移。 例如,SJMP 08H ;PCPC+2+08H 指令操作示意图如图3-5所示。,图3-5 相对寻址示意图,返回本节,3.2.7 位寻址,位寻址只能对有位地址的单元作位寻址操作。 位寻址其实是一种直接寻址方式,不过其地址是位地址。 例如:SETB 10H ;将10H位置1。 若22H单元中存放着数据40H,22H单元的 D0位的位地址为1
8、0H,执行上述指令后 (22H)=41H。 又如:MOV 32H,C ;32H进位位C ORL C ,32H ;CC32H,返回本节,3.2.8 寻址空间及符号注释,1.寻址空间:每种寻址方式可涉及的存储器空间,例如:MOV A,#55H; 究竟属于立即寻址还是寄存器寻址呢?这要看以哪个操作数为参照系了。我们一般所说的寻址方式是指源操作数,所以此例为立即数寻址。,2.寻址方式中常用符号注释,Rn当前选中的寄存器区中的8个工作寄存器R0R7(n=07)。 Ri当前选中的寄存器区中的2个工作寄存器(间接寻址寄存器)R0、R1(i=0,1)。 direct8位的内部数据存储器单元中的地址。 #dat
9、a包含在指令中的8位常数。 #data16包含在指令中的16位常数。 addr1616位目的地址。 addr1111位目的地址。,rel8位带符号的偏移字节,简称偏移量。 DPTR数据指针,可用作16位地址寄存器。 bit内部RAM或专用寄存器中的直接寻址位。 A累加器。 B专用寄存器,用于乘法和除法指令中。 C进位标志或进位位,或布尔处理机中的累加器。 $ 用于表示程序计数器的当前值。常出现在转移指令中,例如:SJMP $ 表示循环等待。,间址寄存器或基址寄存器的前缀,如Ri,DPTR。 / 位操作数的前缀,表示对该位操作数取反,如/bit。 片内RAM的直接地址或寄存器。 ()由寻址的单元
10、中的内容。 箭头左边的内容被箭头右边的内容所代替。,返回本节,课堂作业: P67: 1、4、7 课后作业: P67: 2、3、5,谢 谢 大 家 再 见!,3.3 MCS-51单片机的指令系统,学习目的及要求 熟悉各类指令的功能、操作的对象和结果及指令执行后对PSW各个位的影响。 8051指令系统的特点:不同的存储空间寻址方式不同,适用的指令不同。,3.3.1 数据传送类指令 3.3.2 算术运算类指令 3.3.3 逻辑运算类指令 3.3.4 控制程序转移类指令 3.3.5 调用子程序及返回指令 3.3.6 位操作指令 3.3.7 空操作指令,返回本章首页,3.3.1 数据传送类指令,数据传送
11、类指令共28条,是将源操作数送到目的操作数。 指令执行后,源操作数不变,目的操作数被源操作数取代。 数据传送类指令用到的助记符有MOV、MOVX、MOVC、XCH、XCHD、SWAP、PUSH、POP8种。,源操作数可采用寄存器、寄存器间接、直接、立即、变址5种寻址方式寻址; 目的操作数可以采用寄存器、寄存器间接、直接寻址3种寻址方式。 数据传送指令是一种最基本最常用的操作,在通常的程序中占有极大的比例。,1以A为目的操作数,MOV A,Rn ;A Rn MOV A,direct ;A(direct) MOV A,Ri ;A(Ri) MOV A,#data ;A #data 上述指令是将源操作
12、数指定的内容送到累加器A中。 上述操作只影响PSW的P标志位。,2以Rn为目的操作数,MOV Rn,A ;Rn A MOV Rn,direct;Rn (direct) MOV Rn,#data ;Rn #data 上述指令是将源操作数指定的内容送到当前工作寄存器组R0R7中的某个寄存器。 例如:设(A)=78H,(R5)=47H,(70)=F2H。 MOV R5,A;R5 (A) ,( R5 )=78H MOV R5,70H;R5 (70H) ,( R5 )=F2H MOV R5,#A3H;R5 A3 ,( R5 )=A3H 注:8051指令系统中没有“MOV Rn,Rn”传送指令。,3以直接
13、地址为目的操作数,MOV direct ,A ; direct (A) MOV direct , Rn ; direct ( Rn ) MOV direct , direct ;目的direct (源direct ) MOV direct ,Ri ; direct ((Ri)) MOV direct ,#data ; direct #data 上述指令是将源操作数指定的内容送到由直接地址direct所指出的片内存储单元中 。,4以间接地址为目的操作数,MOV Ri,A ;(Ri) A MOV Ri,direct ;(Ri) (direct) MOV Ri,#data ;(Ri) #data 例
14、如:设(30H)=6FH,R1=40H, MOV R1,30H, 结果30H单元中数据取出送入R1间接寻址的40H单元,(40H)=6FH。,5以DPTR为目的操作数,MOV DPTR,#data16 ;DPTR #data16 例如 执行 MOV DPTR,#2000H 后, (DPTR)= 2000H。 DPH 20H, DPL 00H 这是唯一的16位立即数传送指令,把16位常数送入DPTR。,6访问外部数据RAM,在8051指令系统中,访问片外RAM只能用寄存器间接寻址,与累加器A配合,共四条指令。 MOVX A,Ri ;A (Ri) MOVX Ri,A ;(Ri) A 寻址范围是片外
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 8051 单片机 指令系统
链接地址:https://www.31doc.com/p-2580835.html