第4章汇编语言程序设计2分解.pptx

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 汇编语言程序设计 4.3 汇编语言程序设计的基本方法 汇编语言源程序编程步骤: ⑴ 明确任务,确定算法。 ⑵ 绘制流程图。 ⑶ 根据流程图编写汇编语言程序。 ⑷ 上机调试程序。 汇编语言程序设计方法 顺序程序设计 分支程序设计 循环程序设计 子程序设计 2 4.3.1 顺序程序设计 按指令书写的前后顺序依次执行,这就是顺序程序。 没有分支、循环等转移指令的程序, 顺序结构是最基本的程序结构,完全采用顺序结构编写的程序并不多见 S1 S2 S3 开始 结束 3 S1 S2 开始 例 在内存中自tab开始的16个单元连续存放着0~15的平方值(平方表),任给一个数x(0≤x≤15),如13,且存放在x单元中,查表求x的平方值,并把结果送入y单元中。根据给出的平方表,分析表的存放规律,可知表的起始地址与数x之和,正是x的平方值所在单元的地址,由此编制程序如下: DATA SEGMENT tab DB 0,1,4,9,16,25,36,49,64,81 DB 100,121,144,169,196,225 x DB 13 y DB ? DATA ENDS 4 CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA BX,tab MOV AL,x XLAT ;查表 MOV AH,0 ADD BX,AX MOV AL,[BX] MOV y,AL MOV AH,4CH INT 21H CODE ENDS END START 5 4.3.2 分支程序设计 分支程序根据条件是真或假决定执行与否 判断的条件是各种指令,如CMP、TEST等执行后形成的状态标志 转移指令Jcc和JMP可以实现分支控制 分支结构: 单分支结构 双分支结构 多分支结构 6 4.3.2 分支程序设计(续) 分支程序结构如下图所示: 分支是通过条件转移指令来实现的。分支结构有一个共同点:运行方向总是向前的。 条件 S1 S2 条件 S S1 S2 Sn 条件 N N Y Y … 7 1、单分支结构 条件成立跳转,否则顺序执行分支语句体 注意选择正确的条件转移指令和转移目标地址 例:计算X-Y的绝对值 mov ax,X sub ax,Y jns nonneg ;条件满足(X-Y≥0)? neg ax ;条件不满足,求补 nonneg:mov result,ax ;条件满足 8 2、双分支结构 条件成立跳转执行第2个分支语句体,否则顺序执行第1个分支语句体 注意: 第1个分支体后一定要有一个JMP指令跳到第2个分支体后 9 [例] 现有一符号函数: 1 当X0时 Y= 0 当X=0时 -1 当X0时 假定X为-25,且存放在VARX单元中,函数值Y存放在VARY单元,试编写程序根据X的值确定函数Y的值。 根据题意画出流程图如下: 10 实现符号函数程序的流程图 开始 AL←X AL≥0? Y←-1 结束 AL=0 Y←1 Y←0 Y Y N N 11 实现符号函数程序的流程图 开始 AL←X AL≥0? Y←-1 结束 AL=0 Y←1 Y←0 DSEG SEGMENT VARX DB -25 VARY DB ? DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG START: MOV AX, DSEG MOV DS, AX MOV AL, VARX CMP AL, 0 JGE NEXT MOV AL, 0FFH JMP HALT NEXT: JE ZARE MOV AL, 1 JMP HALT ZARE: MOV AL, 0 HALT: MOV VARY, AL MOV AH, 4CH INT 21H CSEG ENDS END START 12 4.3.3 循环程序设计 循环程序结构就是重复执行某一段程序,直到某个条件出现为止。循环程序结构同分支程序结构有相似之处,都是根据条件来实现的,

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档