实验2 建立运行汇编语言源程序.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验2 建立运行汇编语言源程序

实验2 建立运行汇编语言程序 实验目的: 1. 熟悉8088/8086的指令书写格式、功能。 掌握汇编语言程序格式掌握汇编、连接、运行汇编程序的全过程使用DEBUG。。 DATAS SEGMENT X DW 1234H Y DW 0c3f6H Z DW 10C5H DATAS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS MOV DS,AX MOV AX,X ADD AX,Z ADD AX,Z SUB AX,Y MOV Z,AX MOV AH,4CH INT 21H CODES ENDS END START 分析一个完整的汇编语言源程序应由哪些部分组成? 答:汇编语言源程序由语句序列构成,每条语句一般占一行;完整的汇编语言程序由段构成;一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可以随意排列;需要独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点;所有可以执行语句必须位于某一个代码段内,说明性语句可以根据需要位于任一段内;通常,程序还需要一个堆栈段。 源程序: DATAS SEGMENT AUGEND DD 99251 SUM DD ? DATAS ENDS EXTRA SEGMENT ADDEND DD -15962 EXTRA ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,ES:EXTRA START: MOV AX,DATAS MOV DS,AX MOV AX,EXTRA MOV ES,AX MOV AX,word ptr AUGEND MOV DX,word ptr AUGEND+2 ADD AX,word ptr ADDEND ADC DX,word ptr ADDEND+2 MOV word ptr SUM,AX MOV word ptr SUM+2,DX MOV AH,4CH INT 21H CODES ENDS END START 总结汇编源程序从编写到执行的过程。写出编写→编译连接→执行对源程序进行编译连接使用汇编语言编译程序(MASM.EXE)对源程序文件中的源程序进行编译,产生目标文件obj文件再用连接程序(LINK.EXE)对目标文件进行连接,生成可在操作系统中直接运行的可执行文件可执行文件包含两部分内容:程序(从源程序中的汇编指令翻译过来的机器码)和数据(源程序中定义的数据)相关的描述信息(比如,程序有多大,要占多少内存空间等)操作系统依照可执行文件中的描述信息,将可执行文件中的机器码和数据加载入内存,并进行相关的初始化(比如:设置CS:IP指向第一条要执行的指令),然后由CPU执行程序。.EXE文件),可以进入调试程序DEBUG中进行运行、调试,观察运行结果是否正确,操作方法如下: ①带被调试文件启动DEBUG; ②调入文件后,执行:G=0;则程序执行完成并提示Program Terminated normally,③同时DEBUG将重新设置寄存器和变量等的初始值; 如果要观察程序运行之后的结果,应该执行:G=0,断点地址。这里的断点地址应该指向程序结束返回DOS之前,也就是如下指令“mov ax,4c00h”和“int 21h”处。 分析实验教程例题1.1 的程序结构。 答: 1·调用字处理程序wordstar建立sam文件 2·用汇编程序masm或sam对源文件汇编产生目标文件obj 3·用连接程序link产生执行文件exe 4·执行程序 1

文档评论(0)

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

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

1亿VIP精品文档

相关文档