汇编语言程序设计实验报告二(分支循环程序实验).pdfVIP

汇编语言程序设计实验报告二(分支循环程序实验).pdf

  1. 1、本文档共5页,可阅读全部内容。
  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文档。上传文档
查看更多

汇编语言程序设计实验报告二(分支循环程序实验)

一、实验目的

1、掌握分支程序、循环程序的设计方法。

2、熟悉DEBUG程序的使用方法。

3、掌握汇编语言程序的编辑、汇编、连接以及调试过程。

二、实验内容

1、编写一程序,将内存中某一区域的数据传送到另一个区域中(要求用循结

构,不考

虑数据块重叠问题)。

2、编写一程序,将内存中某一区域的数据传送到另一区域(要求考虑数据块

重叠问

题)。

三、实验准备

1、预习数据传送指令,熟悉分支和循环程序设计方法。

2、预习DEBUG调试程序的使用方法。

3、根据实验内容要求,编写好实验源程序。

四、实验步骤

1、用QE或其它编辑软件,在计算机上编辑源程序,使其正确无误。

2、汇编、连接源程序,产生.EXE可执行文件。

3、运行程序。

(1)进入DEBUG。打入DEBUGTMYPROG.EXE。MYPROG为所编程序的文

件名。

(2)先用G命令连续剧连续执行程序,程序执行完毕后,观察运行结果。如果

执行后是对的,说明程序编写是正确的,如果结果不对,说明程序有错误,

则执行下一步。

(3)检查程序。在程序中设置若干断点,以便杳出错误所在。

(4)采用单步命令T或执行程序,观察各寄存器和存储单元内容,以便找到错

误之处。

五、实验报告要求

1、列出程序清单,并给出程序流程图。

2、总结实现数据传送的几种方法,指出它们的区别。开始

3、分析实验中所遇到的一些问题,分析错误原因。

4、说明本实验中是如何使用DEBUG进行调试的。CX、SI、DI置初值六、流

程图勤

开始设置增量方式

CX、SI、DI置初值保存SI内容

AL[SI]SISI+源块长度

[DI]ALNSIDI

Y

SISI+1恢复SI内容恢复SI内容

DIDI+1

CXCX-1设置减量方式

NCX=0,SI指向源块末尾

DI指向目的块末尾

Y

结束[DI][SI]

题一流程图N传完了吗,书馆Y

结束

题二流程图

七、程序清单

题一程序清单:

STACKSEGMENTSTACK‘STACK’

DB100DUP(0)

STACKENDS

DATASEGMENTPARA‘DATA’

SOURDB0、1、2、3、4、5、6、7、8、9

DESTDB10DUP(,)

DB‘$’

DATAENDS

SEGMENTPARA‘CODE’

ASSUMECS:CODE

MAINPROCFAR

START:PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA

MOVDS,AX

MOVCX,10

MOVSI,offsetSOUR

MOVDI,offsetDEST

AGAIN:MOVAL,[SI]

MOV[DI],AL

INCSI

INDI

LOOPAGAIN

MOVDX,offsetDEST

MOVAH,09H

INT21H

RET

MAINENDP

CODEENDS

ENDSTART

题二程序清单:

DATASEGMENTPARA‘DATA’

STRGDB‘ABCDEFGHIJKLMNOP’

STG1EQUSTRG+4

STG2EQUSTHG+8

STRSEEQU6

DATAENDS

STACKSEGMENTPARA‘CODE’

DB100DUP(0)STACKENDS

CODESEGMENTPARA‘CODE’

ASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACK

PROCFAR

START:PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA

MOVDS,AX

MOVES,AX

MOVCX,STRSE

MOVSI,OFFSETSTG1

MOVDI,OFFSETSTG2

CLD

PUSHSI

ADDSI,STRSE-1

CMPSI,DI

POPSI

JLMOVE

STD

A

文档评论(0)

187****8198 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档