教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 实用文档 >

微机实验:汇编语言程序的调试与运行步骤

来源:网络收集 时间:2026-08-15
导读: 汇编语言程序的调试与运行,详细步骤 软件实验一 汇编语言程序的调试与运行 一.实验目的 1.学习数据传送和算术运算指令的用法 2.熟悉在PC机上编辑、汇编、连接、调试和运行汇编语言程序的过程。 二.实验内容 将两个多位十进制数相加,要求被加数和加数均

汇编语言程序的调试与运行,详细步骤

软件实验一 汇编语言程序的调试与运行

一.实验目的

1.学习数据传送和算术运算指令的用法

2.熟悉在PC机上编辑、汇编、连接、调试和运行汇编语言程序的过程。 二.实验内容

将两个多位十进制数相加,要求被加数和加数均以ASCII码形式各自顺序存放在DATA1和DATA2为首的5个内存单元中,结果送回DATA1处。 三.程序框图

图1.1 两个多位十进制相加程序流程图

四.程序清单 DISP ENDM DATA DATA1 DATA2

MACRO X

MOV DL,X ;要显示的字符送DL寄存器 MOV AH,02H ;DOS功能调用号是02H INT 21H ;21H中断程序是DOS功能调用

SEGMENT DB '12732' DB '06815'

汇编语言程序的调试与运行,详细步骤

N EQU $-DATA2 DATA ENDS

STACK SEGMENT STACK STA DB 20 DUP (?) TOP EQU $-STA STACK ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA START:MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX MOV AX,TOP MOV SP,AX LEA SI,DATA1 ;☆ MOV BX,0 MOV CX,N CALL DISPL ;显示被加数 DISP '+' LEA SI,DATA2 MOV BX,0 MOV CX,N CALL DISPL ;显示加数 DISP '=' LEA DI,DATA1 MOV CX,N CALL ADDA ;调用加法子程序 LEA SI,DATA1 MOV BX,0 MOV CX,N CALL DISPL ;显示运算结果 DISP 0DH DISP 0AH MOV AX,4C00H INT 21H DISPL DS1:

PROC

MOV MOV INT INC LOOP

AH,02H DL,[SI+BX] 21H BX DS1

;显示子程序

汇编语言程序的调试与运行,详细步骤

RET DISPL ENDP ADDA PROC ;加法子程序 PUSH CX MOV BX,0 AD1: SUB BYTE PTR [SI+BX],30H SUB BYTE PTR [DI+BX],30H INC BX LOOP AD1 POP CX PUSH CX MOV BX,N-1 ;☆☆ CLC AD2: MOV AL,[SI+BX] ADC AL,[DI+BX] AAA MOV [DI+BX],AL DEC BX LOOP AD2 POP CX PUSH CX MOV BX,0 ;☆☆☆ AD3: ADD BYTE PTR [DI+BX],30H INC BX LOOP AD3 POP CX RET ;☆☆☆☆ ADDA ENDP CODE ENDS END START

五.调试步骤

1.编辑源程序,建立一个以后缀为 .ASM的文件.

2.汇编源程序,检查程序有否错误,有错时回到编辑状态,修改程序中错误行。无错时继续第3步。

3. 连接目标程序,产生可执行程序。

4. TDEBUG调试可执行程序,记录数据段DS:0~DS:10的内容。

汇编语言程序的调试与运行,详细步骤

5. 在操作系统状态下,运行程序,并记录屏幕显示内容。

六.思考题

1.将上述程序改为5位数相加,结果为6位数的加法程序。(需考虑进位)

新的程序清单:

DISP ENDM DATA

MACRO X

MOV DL,X ;要显示的字符送DL寄存器 MOV AH,02H ;DOS功能调用号是02H INT 21H ;21H中断程序是DOS功能调用

SEGMENT

DATA1 DB '82732' ;修改后的5位数,相加为6位数! DATA2 DB '36815'

N EQU $-DATA2 DATA ENDS

STACK SEGMENT STACK STA DB 20 DUP (?) TOP EQU $-STA STACK ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA START:MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX MOV AX,TOP MOV SP,AX LEA SI,DATA1 ;☆ MOV BX,0 MOV CX,N

汇编语言程序的调试与运行,详细步骤

CALL DISP LEA MOV MOV CALL DISP LEA MOV CALL LEA MOV MOV CALL DISP DISP MOV INT DISPL DS1: DISPL

PROC MOV MOV INT INC LOOP RET ENDP

DISPL '+'

SI,DATA2 BX,0 CX,N DISPL '='

DI,DATA1 CX,N ADDA SI,DATA1 BX,0 CX,N DISPL 0DH 0AH

AX,4C00H 21H

;显示被加数

;显示加数

;调用加法子程序

;显示运算结果

AH,02H DL,[SI+BX] 21H BX DS1

;显示子程序

ADDA PROC ;加法子程序 PUSH CX MOV BX,0

AD1: SUB BYTE PTR [SI+BX],30H

SUB BYTE PTR [DI+BX],30H INC BX LOOP AD1 POP CX PUSH CX MOV BX,N-1 ;☆☆ CLC AD2: MOV AL,[SI+BX] ADC AL,[DI+BX] AAA MOV [DI+BX],AL DEC BX

汇编语言程序的调试与运行,详细步骤

POP CX PUSH CX MOV BX,0 AD3: ADD BYTE PTR [DI+BX],30H INC BX LOOP AD3 POP CX RET ADDA ENDP CODE ENDS END START

;☆☆☆

;☆☆☆☆

2.简单叙述上机步骤,调试方法。

上机步骤及调试

① 编写代码完成功能要求,文件格式为.asm 文件(如文件名为a.asm),将文件放入

带汇编工具的文件夹中,即含有汇编工具(MASM.EXE)和链接工具(LINK.EXE)的文件夹。

② 打开运行窗口,输入“cmd”然后确定。启动命令行,进入上述文件夹 输入:tasm a.asm

回车后编译产生a.obj文件 再输入:link a.obj

回车后链接产生a.exe文件 最后输入: a.exe 回车后运行结果如图

1

图1.运行结果

汇编语言程序的调试与运行,详细步骤

如果程序有错误,编译时会产生错误提示,指出错误的位置和错误类型及错误码,改正错误后再重新编译链接,直到没有错误和编译链接成功。

③ 启动TD并载入add.exe ,在代码段可以看到程序指令,部分符号已被实际地址或数值替换表示。

④ 查看数据区的数值: 右击选择数据区的菜单中的Goto,在其输入框内输入要查看的数据区地址,如cs:000FH,如图2和图3;

回车确认后即可查看数据区从段地址为CS、偏移地址为000FH

开始的存储情况

图2.goto

汇编语言程序的调试与运行,详细步骤

图3.找到CS字段

5设置断点 ○

选中“cs:000FH”段,然后运行菜单栏“Breakpoints”,在该处设置断点! 断点设置完成后再运行程序. 6查看DS ○

同样用Goto找到想要查看的DS,

图4.找到对应的DS

7记录DS ○

汇编语言程序的调试与运行,详细步骤

汇编语言程序的调试与运行,详细步骤

[注意]

1、 将源代码部分直接拷贝到文本文件中,再将其扩展名改为.asm。

2、 使用个人主页中的汇编语言编译器(TASM.EXE或MASM.EXE之一均可),将1中的

源文件编译成扩展名为.obj的目标文件;再将其链接成为可执行文件(使用TLINK.EXE文件或LINK.EXE文件之一均可); 例如:假设源文件名为temp.asm。 汇编过程如下:masm temp.asm link temp.obj 执行temp.exe文件即可

汇编语言程序的调试与运行,详细步骤

3、 TDEBUG 程序可在个人主页中下载;直接双击运行;

4、 程 …… 此处隐藏:1960字,全部文档内容请下载后查看。喜欢就下载吧 ……

微机实验:汇编语言程序的调试与运行步骤.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1109218.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)