第6章 汇编语言程序设计.pptVIP

  1. 1、本文档共78页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 汇编语言程序设计 本章学习目标 本章详细讲述汇编语言程序设计的基本步骤,通过实例分析说明程序的基本结构,按照程序设计的基本步骤设计各种结构程序的方法,主要有: ? 汇编语言程序设计基本步骤 顺序程序的基本结构和设计方法 分支程序的基本结构和设计方法 循环程序的结构形式和程序设计 子程序设计的基本过程和设计方法 第6章 汇编语言程序设计 6.1 汇编语言程序设计基本方法和基本步骤 6.2 顺序程序的结构形式和程序设计 6.3 分支程序的结构形式和程序设计 6.4 循环程序的结构和程序设计 6.5 子程序结构与设计方法 6.1 汇编语言程序设计基本方法和基本步骤 6.1.1 汇编语言程序设计基本步骤 6.1.2 结构化程序的概念 6.1.3 流程图画法规定 6.1.1 汇编语言程序设计的一般步骤 汇编语言程序设计一般有以下几个步骤: 1.分析问题,抽象出描述问题的数学模型 2.确定解决问题的算法或解题思想 3.绘制流程图和结构图 4.分配存储空间和工作单元 5. 编制程序 6. 程序静态检查 7. 上机调试 6.1.2 结构化程序的概念 所谓结构化程序设计是指程序的设计、编写和测试都采用一种规定的组织形式进行,而不是想怎么写就怎么写。这样,可使编制的程序结构清晰,易于读懂,易于调试和修改,充分显示出模块化程序设计的优点。 在20世纪70年代初,由Boehm和Jacobi提出并证明的结构定理:即任何程序都可以由3种基本结构程序构成结构化程序,这3种结构是:顺序结构、分支(条件选择)结构和循环结构。每一个结构只有一个入口和一个出口,3种结构的任意组合和嵌套就构成了结构化的程序。 1.顺序结构 顺序结构是按照语句实现的先后次序执行一系列的操作,它没有分支、循环和转移 2.分支结构(条件选择结构) 分支结构根据不同情况做出判断和选择,以便执行不同的程序段。分支的意思是在两个或多个不同的操作中选择其中的一个。分为双分支结构和多分支结构 3.循环结构 循环结构是重复执行一系列操作,直到某个条件出现为止。循环实际上是分支结构的一种扩展,循环是否继续是依靠条件判断语句来完成的。按照条件判断的位置,可以把循环分为“当型循环”和“直到型循环”。第一种情况是先作条件判断,第二种情况是先执行一次循环,然后判断是否继续循环。 基本逻辑图下图所示。 6.1.3 流程图画法规定 1.流程图的概念 流程图是由特定的几何图形、指向线、文字说明来表示数据处理的步骤,形象描述逻辑控制结构以及数据流程的示意图。流程图具有简洁、明了、直观的特点。 (2)判断框 (5)指向线 6.2 顺序程序设计 下面举例说明顺序程序的设计。 【例6.1】试编写一程序计算以下表达式的值。 w=(v-(x*y+z-540))/x    式中x、y、z、v均为有符号字数据。 设x、y、z、v的值存放在字变量X、Y、Z、V中,结果存放在双字变量W之中,程序的流程图如图6.1所示。 源程序如下: DATA SEGMENT X DW 200 Y DW 100 Z DW 3000 V DW 10000 W DW 2 DUP(?) DATA ENDS STACK SEGMENT STACK DB 200 DUP(0) STACK ENDS CODE SEGMENT ASSUME DS:DATA,CS:CODE,SS:STACK START: MOV AX,DATA MOV DS,AX ;DATA→AX MOV AX,X IMUL Y ;(X)*(Y)→DX:AX MOV CX,AX MOV BX,DX ;(DX:AX)→(BX:CX) MOV AX,Z CWD ;(Z)符号扩展 ADD CX,AX ADC BX,DX ;(BX:CX)+(DX:AX)→(BX:CX) SUB CX,540 SBB BX,0 ;(BX:CX)-540→(BX:CX) MOV AX,V CWD ;(V)符号扩展 SUB AX,CX SBB DX,BX ;(DX:AX)-(BX:CX)→(DX:AX) IDIV X ;(DX:AX)/X MOV W,AX ;商→W MOV W+2,DX ;余数DX→W+2 MOV AH,4CH INT 21H CODE ENDS ;退出DOS 状态 END START 【例6.2】 【例6.2】已知某班学生的英语成绩按学号(从

您可能关注的文档

文档评论(0)

zyg_2930102 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档