实验2 建立运行汇编语言源程序.doc
文本预览下载声明
实验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
显示全部