- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验二 汇编语言程序上机过程
实验二 汇编语言程序上机过程
实验目的:熟悉8086/88汇编语言编程格式及上机设计调试过程。如图5-1所示。
实验器材:计算机一台,DOS或WINDOWS环境,EDIT.COM、MASM.EXE、LINK.EXE、DEBUG.EXE等程序文件。
实验内容及步骤:
1、编辑录入源程序
EDIT [[盘符][路径]程序基本名.ASM]
建议EDIT后的文件名不要省略,源程序扩展名必须为ASM,不能省略EDIT界面如图所示,激活菜单用鼠标单击或ALT+菜单名的第一个字母。最常用的文件下拉中Save(保存)、Exit(退出,若未存盘会提示是否存盘)两个命令Exit则会弹出如图6-2所示的对话框询问是保存退出(Yes)、不保存退出(No)、取消返回继续编辑(Cancel)。例如:执行如下命令
:\MASMEDIT AA.ASM
图6-1 EDIT的基本界面2、汇编
汇编命令格式如下:
MASM [[盘符][路径]程序基本名[.ASM]]
建议源程序基本名不要省略。例如:
:\MASMMASM AA.ASM ;扩展名“.ASM”可省略
若没有错误显示如下:
Microsoft (R) Macro Assembler Version 5.10
Copyright (C) Microsoft Corp 1981, 1988. All rights reserved.
Object filename [aa.OBJ]: 目标文件名
Source listing [NUL.LST]: ;源程序列表文件,加行号便于查错
Cross-reference [NUL.CRF]: 交叉参考文件,名字信息
49576 + 420869 Bytes symbol space free
0 Warning Errors 警告错误
0 Severe Errors 严重错误filename [.ASM]: ;源程序文件名3、连接
连接命令格式如下:
LINK [[盘符][路径]程序基本名[.OBJ]]
建议程序基本名不要省略。例如::\MASMLINK AA.OBJ ;扩展名“.OBJ”可省略
连接显示信息如下Microsoft (R) Overlay Linker Version 3.64
Copyright (C) Microsoft Corp 1983-1988. All rights reserved.
Run File [AA.EXE]: ;可执行文件名
List File [NUL.MAP]: ;映像文件名
Libraries [.LIB]: ;库文件名
LINK : warning L4021: no stack segment ;警告错误(无堆栈段)
如果省略目标程序名则第一个提示信息为:
Object Modules [.OBJ]: ;目标文件名
4运行或调试运行
如果程序执行结果有显示,则可直接执行看结果,否则需通过调试运行看结果,调试运行另一个重要功能是用查找程序中的功能错误。运行命令的格式如下:
程序基本名[.EXE]
AA
本例题运行结果为显示出“HOW ARE YOU!”。
调试运行的格式如下:
DEBUG 程序基本名.EXE DEBUG AA.EXE ;扩展名“.EXE”不可省略
进入后显示‘-’,用‘U’命令查看程序(;若有数据定义用若干个‘T’或‘P’命令置段寄存器初值,然后再用‘D’命令查看原始数据;而后再用‘T’、‘P’、‘G’命令执行程序的各条语句。边执行边看结果,检查核对是否有误。在某串中查找某个特定字符,找到显示‘Y’,未找到显示‘N’。
EDIT SFZ.ASM
DATA SEGMENT
STRING DB “How are you!,welcome to china!”
N EQU $-STRING
DATA ENDS
CODE SEGMENT
ASSUME CSCODE,ESDATA
START: MOV AX,DATA
MOV ES,AX
LEA DI,STRING
MOV CX,N
CLD
MOV AH,1
INT 21H
REPNE SCASB
JZ FOUND
MOV DL,‘N’
JMP DISP
FOUND:MOV DL,‘Y’
DISP: MO
文档评论(0)