第五章 汇编语言程序设计方法.doc
文本预览下载声明
第五章 汇编语言程序设计方法
本章课题:汇编语言程序设计方法
教学内容:1)、汇编语言程序设计
2)、顺序与循环程序设计方法
3)、分支程序设计方法
4)、查表程序设计方法
5)、子程序设计方法
6)、综合程序设计方法
教学目的:通过本章的学习应掌握汇编语言程序设计方法,具备较复杂程序设计能力。
本章重点:汇编语言程序设计方法
本章难点:分支程序设计方法
教 案:
第一节 汇编语言程序设计
1、程序设计语言
1)、机器语言
直接用二进制数表示指令和数据的最原始的程序设计语言。
2)、汇编语言
用助计符来表示的面向机器的程序设计语言。用汇编语言编制的程序须要用“人工汇编”或“机器汇编”将其翻译成机器语言,才能被机器认识。
3)、高级语言
高级语言是一种面向过程而独立于计算机硬件结构的通用计算机语言。如FORTRAN、PASCAL、C语言等。
注意:①机器语言直接面对机器,实时性好,但难以编出较复杂的程序,现基本上被汇编语言代替;
②汇编语言是目前单片机初学者采用的一种编程方法,它具有实时性强,对较复杂的程序也能编制。
③高级语言它面向过程易于编制复杂程序,具有通用性好,程序简单,但它要求占用较大的内存空间,实时性差,目前从事单片机的开发和研究工作须掌握这种方法。
2、汇编语言的规范
1)、汇编语言源程序的格式
标号:操作码 目的操作数,源操作数;注释
2)、汇编语言伪指令
①ORG----起始地址伪指令;
功能:用来规定目标程序或数据的起始地址。
格式:[标号:] ORG 16位地址
说明:在一个程序中允许有多个ORG指令,以规定不同程序段的起始位置。
②END-----汇编结束伪指令;
功能:用来告诉汇编程序,此源程序到此结束。
格式:[标号:] END
说明:在一个程序中有且只有一个END指令。
例如: ORG 1000H
START:MOV A,B
JNB ACC.7,DONE
CPL A
DONE:MOV B,A
END
③EQU----赋值伪指令;
格式: 字符名称 EQU 数或汇编符号
功能:将右边值赋给左边用户定义的字符
说明:a、由EQU赋的字符可以作数值、数据地址、代码地址。
b、由EQU伪指令所定义的符号必须先定义后使用。
例如:SDGFG EQU 58H ;表示SDGFG=58H
④DB----定义字节伪指令;
格式:[标号:] DB 8位(二进制)数据表。
功能:用于告诉汇编程序从指定的地址单元开始,定义若干个字节存储单元的内容。
说明:a、数据表可以是二进制数也可以是ASCⅡ编码,数据之间用逗号分开,ASCⅡ要加单引号,如C,要写成‘C’。
b、它只适应程序存储器。
例如: ORG 1000H
FIRST:DB 73H,20H,45H,67H,01H
MOV A,#55H
DB 34H,67H,89H,70H
执行后的结果如图1所示
⑤、DW------定义值伪指令;
功能:用来告诉汇编程序从指定的地址单元开始,定义
若干个16位数据(二进制)。
格式:[标号:] DW 字常数或ASCⅡ字符
说明:a、字常数可以是8位也可以是更多位。
b、尽管在存储数据的形式上与DB相同但使用不一样,DB后面只能跟8位的数据或ASCⅡ字符。
C、它只适应程序存储器。
d、单个DW、DB定义的数表个数不得超过80个,多于80个数据应用多个指令完成
例如: ORG 1000H
PIOI:DW 5678H,1234H,2379H
结果如图2所示。
⑥、TA-----数据地址赋值伪指令;
格式:字符名称 DATA 表达式
功能:它的功能是给标号段中的标号赋以数值。
说明:a、本语句与EQU相似,但本语句可以先用后定义;
b、在程序中它常用来定义数据地址。
⑦、BIT-----位地址赋值伪指令;
格式:字符名称 BIT位地址
功能:用于告诉汇编程序,把位地址赋予规定的字符名称,用于位处理程序中。
例如: X0 BIT P1.0
3、汇编语言程序设计方法
1)、程序设计过程
①建立数学模型
②选择适当的算法
③编制程序流程图
④汇编语言程序设计
⑤汇编语言程序调试
2)、程序流程图
①程序流程图的作用
能直观形象地表示各部分的逻辑关系及程序结构,它是设计程序特别是复杂程序的重要工具。
②程序流程图的组成
端点框
表示程序的开始或结束,用 表示,可在内填上相应文字。
显示全部