第4章_MCS-51汇编语言程序设计.ppt
《第4章_MCS-51汇编语言程序设计.ppt》由会员分享,可在线阅读,更多相关《第4章_MCS-51汇编语言程序设计.ppt(77页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、返回目录单片机原理与应用单片机原理与应用第第4章章 MCS-51汇编语言汇编语言程序设计程序设计12/21/20221返回目录n n了解汇编语言编程的基础知识;了解汇编语言编程的基础知识;了解汇编语言编程的基础知识;了解汇编语言编程的基础知识;n n了解汇编语言程序设计的基本步骤和方法;了解汇编语言程序设计的基本步骤和方法;了解汇编语言程序设计的基本步骤和方法;了解汇编语言程序设计的基本步骤和方法;n n了了了了解解解解汇汇汇汇编编编编语语语语言言言言目目目目标标标标程程程程序序序序效效效效率率率率高高高高、占占占占存存存存储储储储空空空空间间间间少、运行速度快、实时性强等特点;少、运行速度快
2、、实时性强等特点;少、运行速度快、实时性强等特点;少、运行速度快、实时性强等特点;n n掌掌掌掌握握握握MCS-51MCS-51汇汇汇汇编编编编语语语语言言言言的的的的顺顺顺顺序序序序、分分分分支支支支、循循循循环环环环、查表及子程序的结构;查表及子程序的结构;查表及子程序的结构;查表及子程序的结构;本章教学要求本章教学要求 第第4章章 MCS-51汇编语言程序设计汇编语言程序设计 12/21/20222返回目录4.1 4.1 程序设计概述程序设计概述程序设计概述程序设计概述4.1.1 4.1.1 程序设计的步骤程序设计的步骤程序设计的步骤程序设计的步骤4.1.2 4.1.2 汇编语言的规范汇
3、编语言的规范汇编语言的规范汇编语言的规范4.1.3 4.1.3 汇编语言程序编辑和汇编语言程序编辑和汇编语言程序编辑和汇编语言程序编辑和汇编汇编汇编汇编4.2 4.2 结构化程序设计方法结构化程序设计方法结构化程序设计方法结构化程序设计方法本章目录本章目录4.2.1 顺序结构程序顺序结构程序4.2.2 分支结构程序分支结构程序4.2.3 循环结构程序循环结构程序4.2.4 查表程序查表程序4.2.5 子程序子程序4.3 汇编语言程序设计实例汇编语言程序设计实例习题与思考题习题与思考题第第4章章 MCS-51汇编语言程序设计汇编语言程序设计 12/21/20223返回目录4.1 程序设计概述程序
4、设计概述n n本本本本章章章章介介介介绍绍绍绍使使使使用用用用MCS-51MCS-51指指指指令令令令系系系系统统统统编编编编写写写写汇汇汇汇编编编编程程程程序序序序的的的的方方方方法法法法。与与与与高高高高级级级级语语语语言言言言相相相相比比比比,汇汇汇汇编编编编语语语语言言言言具具具具有有有有实实实实时时时时性性性性好好好好、代代代代码码码码效效效效率率率率高高高高、执执执执行行行行速速速速度度度度快快快快以以以以及及及及节节节节约约约约内内内内存存存存空空空空间间间间等等等等优优优优点点点点,同同同同时时时时还还还还可可可可以以以以充充充充分分分分利利利利用用用用机机机机器器器器的的的的
5、硬硬硬硬件件件件结结结结构构构构与与与与功功功功能能能能来操作硬件端口。来操作硬件端口。来操作硬件端口。来操作硬件端口。n n本本本本章章章章介介介介绍绍绍绍汇汇汇汇编编编编语语语语言言言言程程程程序序序序编编编编写写写写的的的的一一一一般般般般知知知知识识识识、程程程程序序序序设设设设计计计计的的的的基基基基本本本本步步步步骤骤骤骤和和和和格格格格式式式式,以以以以及及及及各各各各种种种种类类类类型型型型的的的的程程程程序序序序设设设设计计计计,包包包包括括括括顺顺顺顺序序序序程程程程序序序序、分分分分支支支支程程程程序序序序、循循循循环环环环程程程程序序序序、查查查查表表表表程程程程序序序
6、序和子程序和子程序和子程序和子程序等。等。等。等。12/21/20224返回目录4.1.1 程序设计的步骤程序设计的步骤n nMCS-51MCS-51单单单单片片片片机机机机提提提提供供供供111111条条条条指指指指令令令令,它它它它们们们们以以以以指指指指令令令令助助助助记记记记符符符符的的的的形形形形式式式式出出出出现现现现,指指指指令令令令助助助助记记记记符符符符的的的的集集集集合合合合称称称称为为为为汇编语言。汇编语言。汇编语言。汇编语言。n n由汇编语言编写的程序称为汇编语言源程序。由汇编语言编写的程序称为汇编语言源程序。由汇编语言编写的程序称为汇编语言源程序。由汇编语言编写的程序
7、称为汇编语言源程序。n n汇汇汇汇编编编编语语语语言言言言源源源源程程程程序序序序必必必必须须须须翻翻翻翻译译译译成成成成机机机机器器器器代代代代码码码码组组组组成成成成的的的的目目目目标标标标程程程程序序序序,机机机机器器器器才才才才能能能能执执执执行行行行。用用用用汇汇汇汇编编编编语语语语言言言言编编编编制制制制程序的过程,称为汇编语言程序设计。程序的过程,称为汇编语言程序设计。程序的过程,称为汇编语言程序设计。程序的过程,称为汇编语言程序设计。12/21/20225返回目录n n使使使使用用用用汇汇汇汇编编编编语语语语言言言言设设设设计计计计一一一一个个个个程程程程序序序序,大大大大致致
8、致致可可可可分分分分为为为为以以以以下下下下几几几几个步骤:个步骤:个步骤:个步骤:1)1)分析题意,明确要求。分析题意,明确要求。分析题意,明确要求。分析题意,明确要求。2)2)确定算法。确定算法。确定算法。确定算法。3)3)画程序流程图,用图解来描述和说明解题步骤。画程序流程图,用图解来描述和说明解题步骤。画程序流程图,用图解来描述和说明解题步骤。画程序流程图,用图解来描述和说明解题步骤。4)4)分配内存单元,确定程序与数据区的存放地址。分配内存单元,确定程序与数据区的存放地址。分配内存单元,确定程序与数据区的存放地址。分配内存单元,确定程序与数据区的存放地址。5)5)编写源程序。编写源程
9、序。编写源程序。编写源程序。6)6)程序优化。程序优化。程序优化。程序优化。7)7)上机调试、修改和最后确定源程序。上机调试、修改和最后确定源程序。上机调试、修改和最后确定源程序。上机调试、修改和最后确定源程序。4.1.1 程序设计的步骤程序设计的步骤12/21/20226返回目录4.1.2 汇编语言的规范汇编语言的规范n n汇汇汇汇编编编编语语语语言言言言源源源源程程程程序序序序由由由由汇汇汇汇编编编编指指指指令令令令和和和和伪伪伪伪指指指指令令令令两两两两者者者者构构构构成成成成。用用用用汇汇汇汇编编编编语语语语言言言言编编编编写写写写的的的的源源源源程程程程序序序序通通通通常常常常需需需
10、需经经经经过过过过微微微微机机机机汇汇汇汇编编编编程程程程序编译(汇编)成机器码后才能被单片机执行。序编译(汇编)成机器码后才能被单片机执行。序编译(汇编)成机器码后才能被单片机执行。序编译(汇编)成机器码后才能被单片机执行。n n为为为为了了了了对对对对源源源源程程程程序序序序汇汇汇汇编编编编,在在在在源源源源程程程程序序序序中中中中必必必必须须须须使使使使用用用用一一一一些些些些“伪伪伪伪指指指指令令令令”。伪伪伪伪指指指指令令令令是是是是便便便便于于于于程程程程序序序序阅阅阅阅读读读读和和和和编编编编写写写写的的的的指指指指令令令令,它它它它即即即即不不不不控控控控制制制制机机机机器器器
11、器的的的的操操操操作作作作也也也也不不不不能能能能被被被被汇汇汇汇编编编编成成成成机机机机器器器器代代代代码码码码,只只只只是是是是为为为为汇汇汇汇编编编编程程程程序序序序所所所所识识识识别别别别的的的的常常常常用用用用符符符符号号号号,并并并并指指指指导导导导汇汇汇汇编编编编如何进行,故称为伪指令。如何进行,故称为伪指令。如何进行,故称为伪指令。如何进行,故称为伪指令。12/21/20227返回目录 标标标标号号号号:助助助助记记记记符符符符 操操操操作作作作数数数数1 1,操操操操作作作作数数数数2 2,操操操操作作作作数数数数3 3;注注注注释释释释 n n标号标号标号标号:标号是指令地
12、址的标识符号。:标号是指令地址的标识符号。:标号是指令地址的标识符号。:标号是指令地址的标识符号。有有有有了了了了标标标标号号号号,程程程程序序序序中中中中的的的的其其其其它它它它语语语语句句句句才才才才能能能能访访访访问问问问该该该该语语语语句句句句。有有有有关关关关标号的规定如下。标号的规定如下。标号的规定如下。标号的规定如下。1)1)标号由标号由标号由标号由1818个个个个ASCIIASCII字符组成。第一个字符必须是字符组成。第一个字符必须是字符组成。第一个字符必须是字符组成。第一个字符必须是字母,其余字符可以是字母、数字或其它特定字符;字母,其余字符可以是字母、数字或其它特定字符;字
13、母,其余字符可以是字母、数字或其它特定字符;字母,其余字符可以是字母、数字或其它特定字符;2)2)标号不能使用该汇编语言已经定义了的符号。如标号不能使用该汇编语言已经定义了的符号。如标号不能使用该汇编语言已经定义了的符号。如标号不能使用该汇编语言已经定义了的符号。如指令助记符、伪指令以及寄存器符号名称等;指令助记符、伪指令以及寄存器符号名称等;指令助记符、伪指令以及寄存器符号名称等;指令助记符、伪指令以及寄存器符号名称等;3)3)标号后边必须跟以标号后边必须跟以标号后边必须跟以标号后边必须跟以冒号冒号冒号冒号。1 1汇编指令格式汇编指令格式汇编指令格式汇编指令格式4.1.2 汇编语言的规范汇编
14、语言的规范-标号标号标号标号12/21/20228返回目录n n操操操操作作作作数数数数:操操操操作作作作数数数数用用用用于于于于给给给给指指指指令令令令的的的的操操操操作作作作提提提提供供供供数数数数据据据据或或或或地地地地址址址址。在在在在一一一一条条条条汇汇汇汇编编编编语语语语句句句句中中中中操操操操作作作作数数数数可可可可能能能能是是是是空空空空白白白白的的的的,也也也也可可可可能能能能包包包包括括括括两两两两项项项项或或或或三三三三项项项项。各各各各操操操操作作作作数数数数间间间间用用用用逗逗逗逗号号号号分分分分隔隔隔隔。操操操操作作作作数数数数字字字字段段段段的的的的内内内内容容容
15、容可可可可能能能能包包包包括括括括工工工工作作作作寄寄寄寄存存存存器器器器、特特特特殊殊殊殊功功功功能能能能寄寄寄寄存存存存器器器器、标号、常数和表达式。标号、常数和表达式。标号、常数和表达式。标号、常数和表达式。n n注注注注释释释释:对对对对程程程程序序序序加加加加以以以以说说说说明明明明,是是是是不不不不可可可可执执执执行行行行部部部部分分分分。注注注注释释释释字字字字段段段段必必必必须须须须以以以以分分分分号号号号“;”开开开开头头头头,长长长长度度度度不不不不限限限限,当当当当一一一一行行行行书书书书写写写写不不不不下下下下时时时时,可可可可以以以以换换换换行行行行接接接接着着着着书
16、书书书写写写写,但但但但换换换换行行行行时时时时应应应应注注注注意意意意在在在在开开开开头使用分号头使用分号头使用分号头使用分号“;”。4.1.2 汇编语言的规范汇编语言的规范-操作数操作数12/21/20229返回目录MCS-51MCS-51系列单片机的常用伪指令有:系列单片机的常用伪指令有:系列单片机的常用伪指令有:系列单片机的常用伪指令有:ORGORG、ENDEND、EQUEQU、DATADATA、DBDB、DWDW、DSDS和和和和BITBIT等。等。等。等。2 2伪指令伪指令伪指令伪指令4.1.2 汇编语言的规范汇编语言的规范-伪指令伪指令ORGORG格式:格式:格式:格式:标号标号
17、标号标号:ORG 16:ORG 16位地址位地址位地址位地址功能:规定程序块或数据块存放的起始地址。功能:规定程序块或数据块存放的起始地址。功能:规定程序块或数据块存放的起始地址。功能:规定程序块或数据块存放的起始地址。如:如:如:如:ORGORG8000H8000H;规规规规定定定定下下下下面面面面的的的的第第第第一一一一条条条条指指指指令令令令从从从从地地地地址址址址8000H8000H单元开始存放,即标号单元开始存放,即标号单元开始存放,即标号单元开始存放,即标号STARTSTART的值为的值为的值为的值为8000H8000HSTART:START:MOVMOV A,#30HA,#30H
18、.(1 1)汇编起始伪指令汇编起始伪指令汇编起始伪指令汇编起始伪指令ORGORG12/21/202210返回目录格式:格式:格式:格式:标号标号标号标号:END END 表达式表达式表达式表达式 功能:结束汇编。汇编程序遇到功能:结束汇编。汇编程序遇到功能:结束汇编。汇编程序遇到功能:结束汇编。汇编程序遇到ENDEND伪指令后即结束汇伪指令后即结束汇伪指令后即结束汇伪指令后即结束汇编。处于编。处于编。处于编。处于ENDEND之后的程序,汇之后的程序,汇之后的程序,汇之后的程序,汇 编程序不予处理。编程序不予处理。编程序不予处理。编程序不予处理。(2 2)汇编结束伪指令)汇编结束伪指令)汇编结束
19、伪指令)汇编结束伪指令ENDEND4.1.3 汇编语言的规范汇编语言的规范-伪指令伪指令ENDEND如:如:如:如:ORG ORG2000H2000HSTART:MOVSTART:MOVA,#00HA,#00H END END;表示标号表示标号表示标号表示标号STARTSTART开始的开始的开始的开始的程序段结束。程序段结束。程序段结束。程序段结束。12/21/202211返回目录格式:格式:格式:格式:字符名称字符名称字符名称字符名称EQU EQU 操作数操作数操作数操作数功能:将操作数赋予规定的字符名称。功能:将操作数赋予规定的字符名称。功能:将操作数赋予规定的字符名称。功能:将操作数赋予
20、规定的字符名称。(3 3)等值伪指令)等值伪指令)等值伪指令)等值伪指令EQUEQU4.1.3 汇编语言的规范汇编语言的规范-伪指令伪指令EQUEQU如:如:如:如:ABABEQU 16HEQU 16HDELYDELYEQU 1234HEQU 1234HMOVMOV A,AB A,ABLCALL DELYLCALL DELY12/21/202212返回目录格式:字符名称格式:字符名称格式:字符名称格式:字符名称DATA DATA 操作数操作数操作数操作数 字符名称字符名称字符名称字符名称XDATA XDATA 操作数操作数操作数操作数功能:将操作数赋予规定的字符名称。功能:将操作数赋予规定的字
21、符名称。功能:将操作数赋予规定的字符名称。功能:将操作数赋予规定的字符名称。(4 4)数据地址伪指令)数据地址伪指令)数据地址伪指令)数据地址伪指令DATADATA(XDATAXDATA)4.1.3 汇编语言的规范汇编语言的规范-伪指令伪指令EQUEQU如:如:如:如:ABABDATA 16HDATA 16HDELYDELYXDATA 1234HXDATA 1234HMOVMOV A,AB A,ABLCALL DELYLCALL DELY12/21/202213返回目录格式:格式:格式:格式:标号标号标号标号:DB 8DB 8位二进制数表位二进制数表位二进制数表位二进制数表功功功功能能能能:D
22、BDB指指指指令令令令是是是是在在在在程程程程序序序序存存存存储储储储器器器器(ROMROM)中中中中,从从从从指指指指定定定定的的的的地地地地址址址址单单单单元元元元开开开开始始始始,定定定定义义义义若若若若干干干干个个个个8 8位位位位内内内内存存存存单单单单元元元元的的的的内内内内容容容容。用用用用来来来来在在在在程程程程序序序序存存存存储储储储器器器器的的的的某某某某一一一一部部部部分分分分存存存存入入入入一一一一组组组组8 8位位位位二二二二进进进进制制制制数数数数,或或或或者者者者是是是是将将将将一一一一个个个个数数数数据据据据表表表表格格格格存存存存入入入入程程程程序序序序存存存
23、存储储储储器器器器。这这这这个个个个伪伪伪伪指指指指令令令令在汇编以后,将影响程序存储器的内容。在汇编以后,将影响程序存储器的内容。在汇编以后,将影响程序存储器的内容。在汇编以后,将影响程序存储器的内容。(5 5)定义字节伪指令)定义字节伪指令)定义字节伪指令)定义字节伪指令DBDB4.1.3 汇编语言的规范汇编语言的规范-伪指令伪指令DBDB12/21/202214返回目录以上伪指令经汇编以后,将从以上伪指令经汇编以后,将从以上伪指令经汇编以后,将从以上伪指令经汇编以后,将从1010H1010H开始的若干内存单元赋值:开始的若干内存单元赋值:开始的若干内存单元赋值:开始的若干内存单元赋值:(
24、1010H)=20H(1010H)=20H(1011H)=43H(1011H)=43H(1012H)=25H(1012H)=25H(1013H)=FFH(1013H)=FFH其中其中其中其中43H43H是字符是字符是字符是字符C C的的的的ASCIIASCII码,码,码,码,FFHFFH是数值是数值是数值是数值-1-1的补码,的补码,的补码,的补码,十进制数十进制数十进制数十进制数3232也换算为也换算为也换算为也换算为1616进制数进制数进制数进制数20H20H。4.1.3 汇编语言的规范汇编语言的规范-伪指令伪指令DBDB应用应用如:如:如:如:ORGORG1010H1010H TAB:T
25、AB:DBDB32,C,25H,-132,C,25H,-112/21/202215返回目录 标号标号标号标号:DW 16DW 16位二进制数表位二进制数表位二进制数表位二进制数表功功功功能能能能:DWDW指指指指令令令令是是是是在在在在程程程程序序序序存存存存储储储储器器器器(ROMROM)中中中中,从从从从指指指指定定定定的的的的地地地地址址址址单单单单元元元元开开开开始始始始,定定定定义义义义若若若若干干干干个个个个1616位位位位数数数数据据据据。一一一一个个个个1616位位位位数数数数要要要要占占占占两两两两个个个个存存存存储储储储单单单单元元元元,其其其其中中中中高高高高8 8位位位
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- _MCS 51 汇编语言 程序设计
限制150内