微型计算机原理及应用(第三版)-六.ppt

微型计算机原理及应用(第三版)-六.ppt

ID:51496166

大小:1.60 MB

页数:59页

时间:2020-03-25

微型计算机原理及应用(第三版)-六.ppt_第1页
微型计算机原理及应用(第三版)-六.ppt_第2页
微型计算机原理及应用(第三版)-六.ppt_第3页
微型计算机原理及应用(第三版)-六.ppt_第4页
微型计算机原理及应用(第三版)-六.ppt_第5页
资源描述:

《微型计算机原理及应用(第三版)-六.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第6章微型计算机的程序设计6.1 程序设计步骤1376.2 简单程序1386.3 分支程序1406.4 循环程序1436.5 子程序1466.6 查表程序150习题在了解和熟悉了86系列指令系统的基础上,本章将介绍程序设计的一般过程,以及几种典型的程序形成的编写方法。6.1程序设计步骤程序是计算机命令(语句)的有序集合,当用计算机求解某些问题时需要编制程序。汇编语言程序设计归纳如下7个步骤:(1)分析问题:分析问题就是全面理解问题,要把解决问题所需条件、原始数据、输入和输出信息、运行速度要求、运算精度要求和结果形式等搞清楚。对较大问题的程序设计

2、,一般还要用某种形式描绘一个“工艺”流程,以便于对整个问题的讨论和进行程序设计。“工艺”流程是指用表格、线条图、形象图或流程图等去描述问题或问题的物理过程。(2)建立数学模型:在对问题全面理解后,需要建立数学模型,这是把问题向计算机处理方式转化的第1步骤。建立数学模型是把问题数学化、公式化,有些问题比较直观,可不去讨论数学模型问题;有些问题符合某些公式或某些数学模型,可以直接利用;但有些问题没有对应的数学模型可以利用,需要建立一些近似数学模型模拟问题,由于计算机的运算速度很快,所以运算精度可以很高,近似运算往往可以达到理想精度。对初学者来说,主

3、要是学习程序设计语法,复杂的数学模型可暂不去考虑。(3)确定算法:建立数学模型后,许多情况下还不能直接进行程序设计,需要确定符合计算机运算的算法。计算机的算法比较灵活,一般要优选逻辑简单、运算速度快、精度高的算法用于程序设计;此外,还要考虑占用内存空间小、编程容易等特点。算法可由计算机语言、日常生活语言、表格、自定义关系图或流程图等按计算机能够接受的方法进行描述,读者采用哪一种方式描述算法,有时还取决于习惯。(4)绘制程序流程图:程序流程图是用箭头线段、框图及菱形图等绘制的一种图。用它能够把程序内容直接描述出来,因此,它在程序设计中应用很普遍。

4、程序流程图如图6.1所示。(5)内存空间分配:汇编语言的重要特点之一是能够直接用机器指令或伪指令为数据或代码程序分配内存空间,当然,在程序中没有指定分配存储空间时,系统会按约定方式分配存储空间。86系列存储器结构是分段的,如代码段、数据段、堆栈段或附加段,在程序设计时要考虑分段结构,要执行的程序段应设在当前段(活动段)中。程序在运行时所需要的工作单元应尽可能设在CPU寄存器中,这样存取速度快,而且操作方便。(6)编制程序与静态检查:编制程序就是按计算机语法规定书写计算机解决问题的过程。汇编语言编程应按指令系统和伪指令的语法规则进行,汇编语言符号

5、虽然简单,但它的含意并不直观。初学者应多参照指令表或指令说明进行,以免给程序调试造成许多麻烦。编制程序首先关心的还是程序结构,它应是模块化和通用子程序结构,程序的结构要层次简单、清楚、易读、易维护为好。若程序运行时还要伴随人机对话过程,还应考虑用户在应用时操作简便,并有相应的提示给用户一些指导。静态检查是上机调试前的最后一步,只要细心,一般可以查出许多错误,这也就减少了程序调试时的许多麻烦。图6.1(7)程序调试(实验):程序调试是程序设计最后一步,也是非常重要的一步。没有调试过的程序,很难保证程序无错误,就是很熟练的程序员也不能保证这一点,因

6、此,程序调试是不可缺省的。程序调试是为了纠正错误。纠正错误的方法很多,例如在编辑、汇编、连接或用调试软件(如DEBUG)调试时都可以发现错误并设法修改程序。6.2简单程序这种程序的形式最简单,计算机执行程序的方式是“从头到尾”,逐条执行指令语句,直到程序结束,这是程序的最基本形式,任何程序都离不开这种形式。一般熟悉指令的读者,对于这类简单程序不用按上述7个步骤,而直接对给出的题目写出助记符程序清单。第5章讲述指令系统时所举的例子大多属于这种形式的程序。下面例子是为了熟悉上述程序设计步骤。【例6.1】用数据运算指令,对两个16位数做加法运算。这两

7、个数从地址10050H开始连续存放,低位在小地址一端,结果放在这两个数之后。(1)分析题目:它是一个16位数相加的问题。在用加法指令时,必须要考虑低8位和低8位相加后产生的进位问题。(2)根据86系列指令系统,可以直接对累加器AX做字操作,但在低位相加后,会影响标志寄存器的进位位CF,所以,要用带进位的加法指令。(3)绘制程序流程图,如图6.2所示。图6.2(4)内存空间分配:被加数、加数及和在内存的空间分配见表6.1所示(见书第139页)。(5)编制的程序如下:MOV AX,1000HMOV DS,AX   ;DS=1000HMOV SI,5

8、0H   ;被加数指针SI=50HMOV DI,52H   ;加数指针DI=52HMOV BX,54H   ;和的指针BX=54HCLC       

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

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

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