实验一—DEBUG的使用.doc
文本预览下载声明
实验一 DEBUG的使用
实验目的
熟练掌握DEBUG的常用命令以及使用DEBUG调试程序的一般方法。
实验内容
1.熟悉DEBUG的常用命令
通过CMD命令进入DOS方式,运行DEBUG程序,练习DEBUG常用命令(DEBUG常用命令详细说明见五和六)。
2.使用DEBUG调试程序
用CMD命令进入DOS方式。
运行DEBUG程序。
使用A命令将以下笑脸程序逐行输入。
MOV DL,1
MOV AH,2
INT 21H
INT 20H
使用T命令逐条指令运行笑脸程序,观察每条指令执行前后相关寄存器的内容变化情况。
使用G命令连续运行笑脸程序,观察程序运行结果。
使用R命令修改寄存器BX和CX的内容为笑脸程序的长度。
使用N命令将笑脸程序命名为S。
使用W命令将笑脸程序写到指定磁盘的指定路径目录中。
退出DEBUG,进入笑脸程序所在目录。
运行笑脸程序S。观察程序运行结果。
用DEBUG调试已生成的S程序。
实验要求
认真完成实验每一步骤,详细记录实验过程、现象和结果,及时整理实验报告。
实验作业
1.用A命令或E命令将笑脸程序中第1条指令中的立即数修改为46,重复步骤(4)~(10),观察程序运行结果,分析为什么?
如果要将笑脸程序修改为显示别的字符程序,如何修改程序?
2.如果想无限循环显示笑脸,如何修改程序?
3.写出实验体会。
DEBUG简介
DEBUG是一种面向汇编语言的动态调试工具,共有19条命令。DEBUG提供了可以跟踪、测试程序的环境和条件,使编程者能对. EXE和.COM文件的执行进行动态跟踪调试,能够较快地查找出文件中的逻辑错误和检查程序的运行结果。此外,也可以在进入DEBUG后直接用小汇编语言(ASM)编写、调试一些小程序。
Microsoft DEBUG命令的具有以下共性:
DEBUG提示符为“-”。
任何命令都以一个英文字母开头,后面跟一个或多个参数。
命令字母和参数可用大写、小写或混合形式。
命令字母和参数中相邻两个十六进制数之间必须用逗号或空格分开,其它各部分之间有无空格或逗号都可以。
执行任何命令期间都可用Ctrl+Break或Ctrl+C结束命令的执行。
键入命令字母和参数后必须按回车键才能使命令有效。
在执行某命令期间,可按Ctrl + NumLock键暂停显示以便观察。再按任何其它键,则继续显示。
DEBUG检查输入命令的语法错误,即如果输入的命令有错误,将显示错误信息。
在DEBUG程序状态下,控制键和DOS支持的编辑键继续有效。
DEBUG的启动方式有两种:
1)在DOS提示符下键入:
DEBUG ADD.EXE ?(“?”表示回车键,下同)
将出现DEBUG状态的提示符“-”,系统这时已处于DEBUG程序的管理下,并把指定的可执行文件ADD.EXE调入内存。此时,用户可在提示符“-”后输入DEBUG命令对ADD. EXE文件进行调试了。
2)在DOS提示符下键入:
DEBUG ?
该方式没有指定被调试文件名,这种方式可以对目前在内存中的内容进行调试;若需装入调试文件,则可在DEBUG环境下用Name和Load命令调入需要调试的文件:
-NADD.EXE?
-L ?
在装入要调试的文件后,就可以使用DEBUG命令对文件进行调试了。
Microsoft DEBUG常用命令及使用说明
1.DEBUG 常用命令
内存单元访问命令
内存单元一般存放数据的形式在屏幕如表1.1所示。Debug中内存单元访问命令一般包括:显示内存单元内容命令(D),向内存单元输入数据命令(E)和在指定内存区域填充数据命令(F)。
表1.1 存储器内容显示形式 地址 十六进制数据 ASCII码字符 127E:0200 0A C0 74 09 56 57 E8 84-21 5F 5E 73 0A B9 04 01 ..t.VW..!_^s.... 127E:0210 FC 56 57 F3 A4 5F 5E C3-50 56 33 C9 33 DB AC E8 .VW.._^.PV3.3... 127E:0220 C3 23 74 19 3C 0D 74 15-F6 C7 20 75 06 3A 06 14 .#t..t... u.:.. 127E:0230 D4 74 0A 41 3C 22 75 E6-80 F7 20 EB E1 5E 58 C3 .t.Au... ..^X. 1)D命令
格式:D[地址范围]
功能:显示地址范围内的内存数据,包括十六进制数及其对应ASCII码。
例1-1:输入如下命令:
-D 100 130
显示结果如下:
0F2A:0100 12 08 2F 00 00 00 00 00 - 00 00 00 00
显示全部