汇编语言程序设计第4章 汇编语言程序设计方法 ppt课件.ppt

汇编语言程序设计第4章 汇编语言程序设计方法 ppt课件.ppt

ID:58756020

大小:956.00 KB

页数:80页

时间:2020-10-03

汇编语言程序设计第4章  汇编语言程序设计方法 ppt课件.ppt_第1页
汇编语言程序设计第4章  汇编语言程序设计方法 ppt课件.ppt_第2页
汇编语言程序设计第4章  汇编语言程序设计方法 ppt课件.ppt_第3页
汇编语言程序设计第4章  汇编语言程序设计方法 ppt课件.ppt_第4页
汇编语言程序设计第4章  汇编语言程序设计方法 ppt课件.ppt_第5页
资源描述:

《汇编语言程序设计第4章 汇编语言程序设计方法 ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、汇编语言程序设计第4章汇编语言程序设计方法汇编语言程序设计的基本方法顺序程序设计分支程序设计循环程序设计小结第4章汇编语言程序设计4.1汇编语言程序设计的基本方法4.1.1汇编语言程序设计的步骤由于问题的复杂程度不同、编程者的经验不同,使得程序设计的具体过程会有所不同。简单的问题可以直接进入编码步骤。复杂的问题在实际的程序设计中要经过以下几个步骤:1.分析问题即分析用户需求和给定的有哪些数据,需要输出什么样的数据,需要进行哪种处理(如文字检索、分类排序等)。需要用到哪些硬件和软件,即分析运行环境,进行可行性分析,做到心中有数。2.建立数学模型即在分析

2、问题和明确要求的基础上,建立数学模型。所谓建立数学模型就是根据设计任务或将控制对象的物理过程归纳、抽象为数学表达式。3.选择适当的算法数学模型建立后,要研究具体的算法(适合计算机解决问题的方法和步骤)。对于同一个问题往往可以有不同的算法。4.画出流程图就是将一个复杂的问题分解成一个个功能模块,先画出模块间的结构图,再对每个功能模块画出算法流程图。5.编码(编写汇编语言源程序)根据流程图来编写汇编语言源程序。许多在高级语言中由编译程序完成的工作,在汇编语言中都必须由人工完成,如存储空间分配、参数的传递、寄存器使用等。6.上机调试把编好的程序后进行调试,

3、修改其中的语法错误和逻辑错误。4.1.2流程图的画法规定程序流程图是用几何图形配以文字说明来描述算法的。它形象地描述程序执行的过程,清楚地表达程序结构的内在联系。流程图中常用符号:(1)起止框(4-1a示)表示算法的开始和结束。(2)处理框(4-1b示)表示一种处理过程。框内用文字简要说明一段程序的功能或处理的过程。(3)流程线(图4-1c示)它的箭头表示流程的方向。(4)判断框(图4-1d示)用于指示一个判断点,从这点产图4-1生分支。在框内应注明测试条件,而测试结果则注明在各分支流程线上。对于判断框,它有一个入口,两个出口。(5)连接点(图4-1

4、e示)用来表示两个具有同一标记的“连接点”应连接成一个点。(6)子程序框(图4-1f示)表示调用子程序,在该框内填入相应的子程序名称或入口地址。4.1.3结构化程序设计程序设计中普遍采用结构化程序设计的方法。主要依据包括:1.程序质量标准“清晰第一,效率第二”。2.程序设计过程“自顶向下,逐步求精”把一个复杂问题分解为若干个小的部分有助于问题的解决。图4-2顺序结构3.使用“顺序、分支、循环”三种基本结构事实上任何复杂的程序都可由顺序结构(见图4-2)、分支结构(见图4-3)及循环结构(见图4-4)构成。每种结构只有一个入口(图中的a点)和1个出口(

5、图中的B点),整个程序也只有一个入口和出口。图4-3分支结构图4-4循环结构返回章目录4.2顺序程序设计4.2.1顺序结构顺序结构(图4-2示),其中A和B两个处理框是顺序执行的。即在执行完A框所指定的操作后,必然接着执行B框所指定的操作。顺序结构是最简单的一种基本结构。4.2.2顺序程序设计举例1.加法程序例4-1任意给两个32位数据X=12345678H,Y=56781234H,求两个数的和。解:本题要注意原始数据在内存中的存放顺序;运算时要注意先求低16bit的和,再求高16bit的和。程序如下:DATASEGMENTXDW5678H,234H

6、;注意:要把高16bit写在后YDW1234H,5678HZDW?,?;预留结果单元DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAX,XADDAX,Y;低16bit相加MOVZ,AX;低位和存放MOVAX,X+2ADCAX,Y+2;高16bit相加MOVZ+2,AX;高位和存放MOVAH,4CHINT21H;返回DOS系统CODEENDSENDSTART2.四则混合运算程序例4-2编写程序计算((X+Y)/4-Y)×8,将结果保存在Z中。解:在已知X、Y的条件下

7、,只需按公式就可计算出结果。程序如下:DATASEGMENTXDW16YDW2ZDW?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATAMAINPROCFARPUSHDS;DS:0000入栈SUBAX,AXPUSHAXMOVAX,DATA;设置数据段MOVDS,AXMOVAX,X;取数XADDAX,Y;相加MOVBL,04DIVBL;AX/4,商在AL中,余数在AH中MOVAH,00H;为下一步操作做准备SUBAX,Y;减法MOVCL,3;设移位次数SALAL,CL;左移3位相当于乘8MOVZ,AX;结果存Z中RETMA

8、INENDPCODEENDSENDMAIN程序中的乘法用左移指令来实现,也可用乘法指令或加法指令来实现。除法

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。