- 1、本文档共84页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
sjhdjhcjd
8086/8088宏汇编语言程序设计 第5章 程序设计基本技术 顺序程序设计 分支程序设计 循环程序设计 子程序设计 DOS功能子程序的调用 5.1 概述 我们知道,8086/8088CPU把存储器分成若干段,而每一个段是可独立寻址的逻辑单位。 段是8086/8088系列微机的汇编语言程序的基础。一个段就是若干指令和数据的集合。 因此,我们在编制汇编语言源程序时,首先要使用段定义伪指令来构造一个由若干指令和数据组成的程序段。 程序中逻辑段的数目由实际情况确定,通常根据程序中的用途来划分段,如作堆栈使用的段、存放数据的段,存放程序的段等等。 程序基本段结构 DATA SEGMENT … DATA ENDS STACK1 SEGMENT PARA STACK DW 20H DUP(0) STACK1 ENDS CODE SEGMENT BEGIN : MOV AX,DATA MOV DS,AX ;装入数据段寄存器 … MOV AH,4CH INT 21H ;返回到DOS,返回码为0 CODE ENDS END BEGIN 在程序中,代码段、数据段、附件段和堆栈段这4个段的顺序是任意的。 程序的功能是由代码段来实现的。程序的代码段的基本结构有4类:顺序程序、循环程序、分支程序和子程序。 编制汇编语言源程序的步骤 (1) 分析问题,确定算法 (2) 根据算法画出程序流程图 (3) 合理分配存储空间和寄存器 (4) 根据流程图编写程序 (5) 调试程序 分析问题,确定算法就是确定解决问题的方法和步骤。 编制流程图是将解决问题的方法、步骤用框图的形式表示出来。如果要解决的问题比较复杂,那么可以逐步细化,直到每一框图都可以很容易编制程序为止。 编制汇编语言源程序的步骤 流程图不仅便于编写程序,而且对程序逻辑上的正确性也比较容易查找和修改。 流程图主要由处理框、判定框、起止框、连接框和流向线5种框图符号组成。 (1)处理框:用于说明一程序段(或一条指令)所完成的功能。这种框图通常只有一个入口和一个出口。 (2)判断框:表示进行程序的分支流向判断,框内记入判定条件。这种框图通常有一个入口,两个或两个以上的出口。在每个出口上要注明分支流向的条件。 (3)起止框:表示一个程序或一个程序模块的开始和结束。起始框内通常用程序名、标号或“开始”字符来表示,它仅有一个出口。终止框内通常用“结束”或“返回”字符表示,它仅有一个入口。 (4)连接框:当程序比较复杂时,流程图的连线较多,且常常纵横交错,这时可以用连接框来表示两根流向线的连接关系。所以连接框种常用字母或数字来表示。框内有相同字母或数学就表示它们有连线关系。通常它只有一个入口或出口。 (5)流向线:表示程序的流向。 存储器和寄存器的分配 存储器和寄存器时进行汇编语言程序设计的舞台。由于CPU中的寄存器数量有限而且有些操作要使用特定的寄存器,所以程序中要合理分配各寄存器的用途。 程序运行时,其目标代码时存放在存储器中的,而且操作数和程序执行的结果也是存储在存储单元中的。因此,充分利用存储空间,节约使用存储空间时我们编制一个好的应用程序应该注意的问题。 为了编程方便,我们通常给这些存储单元赋予一个名字(例如变量名)。存储器中的存储单元有3种类型的用途: (1)常数单元:在这些存储单元中存放的数据是整个程序的常量,且不因程序运行的次数发生改变。在程序中不能修改它的值。 存储器和寄存器的分配 (2)数据单元:数据单元是程序运行中处理的对象,除非程序要求处理变动这些单元的内容,可以在程序中设置新值外,通常不要轻易修改这些单元的内容,以便程序可以多次运行。 (3)工作单元:工作单元用于存放中间结果和最后结果,因此工作单元的内容在程序运行期间是经常变化的。 为了合理的利用存储器单元,在程序设计时要合理分配常数单元,数据单元和工作单元,并充分利用寄存器来减少存放中间结果的工作单元,这样不仅可以节约存储单元,还能提高程序运行速度。 编制汇编语言源程序的步骤 完成了存储单元和寄存器的分配后,就要根据程序框图进行汇编语言源程序的编写。 在进行汇编语言源程序编写时,首先按程序中各部分的用途分段,在使用指令语句和伪指令语句的时候要分清其功能,并且正确使用各种寻址方式。 编写好源程序后,就要对源程序进行调试。调试的步骤: (1)用MASM汇编.ASM文件 (2)用LINK连接.OBJ文件 (3)用DEBUG调试.EXE文件 5.2 顺序程序设计 顺序程序是最简单,也是最基本的一种程序结构形式。 顺序程序结构是从开始到结尾都一直是顺序执行的,中途没有任何分支。程序一直按指令序列在存储器中的存放顺序来执行,由CS:IP提供
您可能关注的文档
最近下载
- 12 全国生态环境监测专业技术人员大比武理论试题集 第十二章 综合分析 .pdf VIP
- GB51004-2015建筑地基基础工程施工规范.doc VIP
- 致敏物质控制措施检查记录表.docx VIP
- 智慧水利大数据信息化集成服务平台建设综合解决方案.docx VIP
- 城市公共交通规划与运输(1).pptx VIP
- 14 全国生态环境监测专业技术人员大比武理论试题集 第十四章 理论考试试题真题 .pdf VIP
- 2023年南宁市青秀区总工会招聘考试真题.docx VIP
- 烟淄管道干线扩能改造工程 环境影响报告书.pdf VIP
- GB50391-2014:油田注水工程设计规范.pdf VIP
- 资源管理平台系统-技术方案.docx VIP
文档评论(0)