单片机并行接口扩展技术第三章文档解析

上传人:我** 文档编号:114637442 上传时间:2019-11-12 格式:DOC 页数:23 大小:161.50KB
返回 下载 相关 举报
单片机并行接口扩展技术第三章文档解析_第1页
第1页 / 共23页
单片机并行接口扩展技术第三章文档解析_第2页
第2页 / 共23页
单片机并行接口扩展技术第三章文档解析_第3页
第3页 / 共23页
单片机并行接口扩展技术第三章文档解析_第4页
第4页 / 共23页
单片机并行接口扩展技术第三章文档解析_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《单片机并行接口扩展技术第三章文档解析》由会员分享,可在线阅读,更多相关《单片机并行接口扩展技术第三章文档解析(23页珍藏版)》请在金锄头文库上搜索。

1、第三章 MCS-51单片机指令系统第三章 MCS-51单片机指令系统第一节 MCS-51单片机指令系统概述教学目的: 1、熟练掌握各种寻址方式。 2、了解指令格式。 3、熟悉单片机执行指令的过程。重点、难点: 1、寻址方式。 2、执行过程。复习旧课: 1、片内ROM。 2、片内RAM。 3、工作方式。引入新课:1、一台计算机所能执行的指令集合就是它的指令系统。对于 单片机用户必须直接使用指令编写程序,因此了解操作系 统十分重要。2、机器语言与汇编语言。 机器语言指令的二进制编码表示。 汇编语言指令的符号表示。 *机器语言:程序长、不易书写、难于阅读和调试、容易错且出错产易查找。 计算机只能识别

2、二进制数,因此用二进制编码的机器语言能直接执行。 *由以上缺点可知,使用符号指令是必要的,指令的符号助记符。 以助记符表示的指令汇编语言。 *以英文名、缩写形式作为助记符。3、操作系统由计算机生产厂商定义的,实际上,它就成了用 户必须遵循的标准。 *无通用性、无法直接移植。 *MCS-51单片机指令系统共有指令111条,分五大类: 1、数据传送。 2、算术运算。 3、逻辑运算及移位指令。 4、控制转移指令。 5、位操作指令。讲授新课: 一、指令格式:1、定义: 指令的表示方法称为指令格式,内容包括指令的长 度和指令的内部信息安排。2、组成:操作码操作数; 操作码规定指令进行何种操作; 操作数指

3、令操作的对象(具体数据或取得数据的 地址或符号。3、语句格式: 标号: 操作码 操作数1,操作数2 ,操作数3;注释其中,方括号内为可选项。各部分之间必须用界定符隔开,即标号要以冒号“:”结尾,操作码和操作数之间要有一个或多个空格,操作数和操作数之间用“,”分隔。注释开始之前要加“;”。 1、标号: 语句地址的标志符号,有了标号,程序中的其 它语句才能访问该语句,有关规定如下: 、由18个ASCII字符组成,但头一个字符必须 是字母,其余字符可以是字母,数字或其它特定字 符。 、不能使用本汇编语言已经定义了的符号作为标 号,如指令助记符,伪指令助记符以及寄存器的符 号名称。 、标号必须跟以冒号

4、。 、同一标号在一个程序中只能定义一次,不能重 复定义。 、一条语句可以有标号,也可无标号,取决于其 它语句是否需要访问这条语句。 举例: 错误 正确3BT:(以数字开头) LOOP1:BEGIN(无冒号)STNB:TA+5G:(“+”)T1349:ADD:(指令助记符)Q: 2、操作码: 规定语句执行的操作,不能空缺。 操作码指出了指令操作的性质,在汇编语言指令中用能够表示指令功能的英文缩写表示。例如,MOV_move的缩写,表示传送RL_rotate left的缩写,表示左循环ANL_and logic的缩写,表示与逻辑运算 3、操作数: 给指令操作提供数据或地址,可能空白,一项、两项、三

5、项、各操作数之间以逗号分隔。 4、注释: 不属于语句的功能部分,它只是对语句的解释说明,可使程序文件编制更加清楚,帮助程序人员阅读,以利于软件保护。 5、分界符: 在上述各部分之间、把它们分隔开以使区分:,;4、指令格式: 由于字长短,指令不定长,有一字节、二字节、三字 节不同长度指令。 1、一字节指令: 只有一个字节,操作码和操作数在同一字节中 *有些是因为指令功能明确,无需具体指定操作数。 INC DPTR、 10100011 *操作数在通用寄存器,可把寄存器编码与指令操作 码“挤”在一个字节中。 例如:MOV A, Rn 1110 1rrr 2、二字节指令: 第一字节操作码。 第二字节操

6、作数。 3、三字节指令:操作码操作码操作数操作码第一操作数第二操作数 操作码2个操作数。 二、寻址方式:(7种) “址”-操作数所在的单元地址 “寻址”-如何确定操作数单元地址。 寻址方式越多-寻址能力越强-指令系统越复杂 MCS-51 有七种寻址方式。1、立即寻址方式在立即寻址中,由指令直接给出参与实际操作的数据(即立即数)。用“#”开头表示立即数。2、寄存器寻址方式*操作数在寄存器中,指定了寄存器就能得到操作数。 MOV A,R0;A-(R0)*范围:32个通用寄存器 部分SFR,A,AB,DPTR 3、直接寻址方式*操作数直接以单元地址的形式给出. MOV A,3AH;*只限于内部RAM

7、*范围:低128单元 SFR4、寄存器间接寻址方式寄存器间接寻址时,指令操作数中指定的寄存器内容为操作数的地址,将该地址所对应的存储单元内容作为操作数。能够用于寄存器间接寻址的寄存器包括数据指针DPTR、堆栈指针SP、R0和R1。5、变址寻址方式变址寻址方式使用程序计数器PC或数据指针DPTR作为基址寄存器,累加器A为变址寄存器,将基址寄存器的内容与变址寄存器的内容之和作为操作数地址。操作数的有效地址可表示为:操作数有效地址=PC或DPTR的内容+A的内容变址寻址只能对程序存储器中的数据作寻址操作,通常用于查表操作中,使用指令符MOVC。6、相对寻址方式相对寻址以当前程序计数器PC的值(源地址

8、)为基址,与指令给出的偏移量rel(相对地址的机器码)相加形成下一条要执行指令的有效地址(又称为目的地址D)。相对寻址是用于寻找指令地址的寻址方式,仅用于相对转移指令中,指令中的偏移量为用补码表示的8位有符号数,取值为:-128+127,所以程序的转移范围为相对于PC当前值的-128+127个字节单元之间,在源程序中,相对地址一般用标号表示。7、位寻址方式位寻址是指对内部RAM中的位寻址区(20H2FH)和某些具有位寻址功能的特殊功能寄存器SFR进行位操作时的寻址方式。位操作指令可对位寻址区内的每个位进行逻辑运算、状态控制等操作。三、小结寻址方式寻址空间示例立即寻址程序存储器MOV A,#20

9、H直接寻址片内RAM,SFRMOV A,20H寄存器寻址工作寄存器R0R7,A,B,C,DPTRMOV A,R0寄存器间接寻址片内RAM低128个字节,片外RAMMOV A,ROMOV A,DPTR变址寻址程序存储器,数据存储器MOVC A,A+PC相对寻址程序存储器JNZ 30H位寻址片内RAM20H2FH,部分SFR的位地址区SETB 3AH第二节 MCS51单片机指令分类介绍教学目的: 1、熟练掌握各类指令。 2、指令存储格式。 3、熟悉指令的代码及执行时间。重点、难点:1、存储格式。2、助记符的记忆 3、代码及执行时间复习旧课: 1、语句格式。 2、寻址方式。讲授新课:3.2.1指令格

10、式中符号意义说明MCS-51的指令系统按功能可分为五类,有数据传送类28条,算术运算类24条,逻辑操作类25条,控制转移类17条,布尔位操作类17条。在具体描述这些指令时通常使用下面的符号,它们的意义如下:1#data表示八位立即数,#data16表示是十六位立即数。“#”表示后面的data是立即数。2direct表示片内RAM和特殊功能寄存器的8位直接地址。其中特殊功能寄存器还可直接使用名称符号来代替直接地址。3Rn(n=07)表示当前选中的工作寄存器组R0R7。选中工作寄存器组的地址由PSW中的RS1和RS0确定,分别为组0:00H07H,组1:08H0FH,组2:10H17H,组3:18

11、H1FH。4Ri(i=0,1)表示对寄存器R0或R1间接寻址。其中为寄存器间接寻址符。5DPTR表示以数据指针DPTR的内容为地址,对片外RAM进行间接寻址。其中的意义同上。6addr11表示11位目的地址。用于AJMP和ACALL指令中,使转向的目的地址与下一条指令首字节位于同一个2K字节的程序存储器地址空间。7addr16表示16位目的地址。用于LJMP和LCALL指令中,可使转向的目的地址为64K程序存储器地址空间的任意单元。8/bit表示对bit位先取反再参与运算,但不影响该位的原值。其中“/”表示取反,bit表示位地址。9rel表示补码形式的8位偏移量。用于相对转移指令中,地址偏移量

12、的范围为-128+127之间。在编写源程序时rel通常由标号代替,其具体值由汇编程序自动计算确定。10()间接寻址时表示间接寄存器指出的地址单元的内容;直接寻址时表示直接地址中的内容。如(30H)表示直接地址30H存储单元的内容。11rrr表示在指令编码中rrr三位的值由当前工作寄存器Rn确定。R0R7对应的三位rrr值分别为000111。如当前工作寄存器为R0则指令编码中rrr的值应为000。3.2.2数据传送类指令组 数据传送类指令是MCS-51指令系统中最基本、也是包含指令最多的一类指令。用于实现寄存器、存储器之间的数据传送,即把“源操作数”中的数据传送到目的操作数,而源操作数不变,目的

13、操作数被传送后的源操作数所代替。该类指令中的源操作数可以是立即数、累加器A、工作寄存器Rn或片内RAM单元,目的操作数可以是累加器A、工作寄存器Rn或片内RAM存储单元,但要注意立即数不能作为目的操作数。一、片内RAM数据传送1、立即数传送MOV A,#dataMOV direct, #dataMOV Rn, #dataMOV Ri, #dataMOV DPTR, #data16 1001 0000B高八位低八位例如:MOV DPTR,#403AH90H40H3AH2、片内RAM之间数据传送指令MOV direct2,direct1MOV direct, RnMOV Rn, directMOV direct, RiMOV Ri, direct寻址方式3、累加

展开阅读全文
相关资源
相关搜索

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

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