第5章汇编语言程序相关设计.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第5章汇编语言程序相关设

5.1顺序程序设计

nC.Bohm在1966年就提出:每个程序都由三种基本结构组成:

n◆顺序结构:按先后顺序执行的语句体;

n◆

选择结构:根据条件选择两个或若干个分支之一来执行的语句结构;

n◆

重复结构:满足条件重复执行某个语句体的语句结构。

n这三种控制结构的一个共同点就是:每种结构只有一个入口和一个出口。

n顺序结构是程序设计中最简单最基本的结构,在顺序结构中程序的执行

流程按各条指令存储的先后顺序依次进行,不产生分支和转移。

n5.2分支程序设计

n分支程序有单路分支、两路分支和多路分支,如下图所示,它们相当于

高级语言中IF-THEN、IF-THEN-ELSE和CASE语句。

1.用转移指令实现分支

n分支程序——判断标志位的状态是否满足条件来实现流程的分支。

因此,在一条对FL状态标志位产生影响的指令后面,用判断标志位状态

的条件转移指令都可能使程序产生分支。

无条件转移指令也使程序产生分支,为使程序流程清晰,无条件转移指

令应尽量少用,多用将破坏程序的结构。

n编程举例:对ASCII字符串加偶校验

n计算机系统中常用一个字节的七位(D~D)表示ASCII字符,余下的最高

60

位(D7)用作奇偶校验(parity

check)

奇偶校验位(D)赋“1”或“0”以使每字节8bit中“1”的总数为奇(或偶)数

7

个;通过检查数据的奇偶性来判断其在传送、存储过程中是否正确。

n设从STRING单元开始存放一个ASCII字符串,已知字符串以ASCII码

24H(字符$)结束,请编程对该字符串加偶校验。

n具体作法是:取出一个字符,判断其是否为$,若是则结束;否则先将D7

位置“1”,再判奇偶标志PF,若PF=1(偶)则将已加偶校验的数送回原

单元,若PF=0(奇)则说明原数中“1”的个数已为偶数,所以原单元的内容

不变;重复以上操作,直到结束。按照以上算法(请读者画出流程图)

编制程序如下。

DATASEGMENT

STRINGDB36H,57H,73H,56H,29H,96H,3EH,7FH,30H

DB20DUP(?)

DBThisisacomputor,24H

DATAENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:MOVAX,DATA

MOVDS,AX

LEABX,STRING

MOVDL,24H;结束标志送DL

AGAIN:MOVAL,[BX]

CMPAL,DL;与结束标志比较

JZDONE;AL为结束标志转结束

ORAL,80H;把AL的D值1

7

JNPNEXT;PF=0(为奇)则转移至NEXT

MOV[BX],AL;为偶

文档评论(0)

王小浪 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档