余敦辉《汇编语言》实验指导书实验1-实验3(4)

2019-06-11 16:09

List File [nul.map]: NUL Libraries [.lib]:

Definitions File [nul.def]:

产生:EXAMPLE.OBJ和 EXAMPLE.EXE文件

情况2:源程序中有错误,比如将字符串的引号改为中文的“‘”后重新用下面命令汇编连接。

>ML /Fl EXAMPLE.ASM

Microsoft (R) Macro Assembler Version 6.11

Copyright (C) Microsoft Corp 1981-1993. All rights reserved.

Assembling: example.asm

example.asm(5): error A2044: invalid character in file example.asm(8): error A2006: undefined symbol : string

则给出2条错误信息提示,并产生错误列表文件 EXAMPLE.LST 在记事本中打开该文件,内容如下:

;输出一个字符串的源程序:

.model small

.stack .data string db ’An example.',0ah,0dh,'$'

example.asm(5): error A2044: invalid character in file

.code ;定义代码段 .startup ;程序的起始点 lea dx, string

example.asm(8): error A2006: undefined symbol : string

mov ah, 09h

int 21h ; 功能调用:显示

.exit 0 ;程序结束点,返回dos end ;汇编结束

特别提示:

两处错误明显的标在源程序中。

实际上,只有一处错误,后面的错误是由于前面的错误引起的,所以改正错误时要从前往后逐个修改,并且每改完一处就重新存盘、汇编,以提高调试效率。 3、 调试:

C:\\masm>debug example.exe

-u ;反汇编 1395:0000 BA9713 MOV DX,1397 1395:0003 8EDA MOV DS,DX 1395:0005 8CD3 MOV BX,SS 1395:0007 2BDA SUB BX,DX 1395:0009 D1E3 SHL BX,1 1395:000B D1E3 SHL BX,1 1395:000D D1E3 SHL BX,1 1395:000F D1E3 SHL BX,1 1395:0011 FA CLI

1395:0012 8ED2 MOV SS,DX 1395:0014 03E3 ADD SP,BX 1395:0016 FB STI

1395:0017 8D160400 LEA DX,[0004] 1395:001B B409 MOV AH,09 1395:001D CD21 INT 21

1395:001F B8004C MOV AX,4C00 -u

1395:0022 CD21 INT 21 ??

此时可用debug命令调试该程序了。 4、 关于变量名对应的偏移地址

;源程序中的第一条指令 ;对应.exit 0 指令 源程序的第一条指令是:lea dx, string 汇编后对应的指令是:LEA DX,[0004]

因此,可看出变量string所对应的偏移地址是:0004h 如果要查看从string开始的字符串的内容,可用如下命令: -D 04 Lc

即查看从04H开始的12个单元的内容。

五、拓展题

1、有两个64位数值,按“小端方式“存放在两个缓冲区buffer1和buffer2种,计算buffer1-buffer2,并将结果存放到变量result中。 2、将DX.AX中的双字右移4位。

六、实验报告

1、写出源程序清单、程序说明、执行结果。

2、调试说明。包括上机调试的情况、上机调试步骤、调试所遇到的问题是如何解决的,并对调试过程中的问题进行分析,对执行结果进行分析。


余敦辉《汇编语言》实验指导书实验1-实验3(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:(新大纲)财经法规与会计职业道德

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: