计算机应用技术实验指导书
- 格式:doc
- 大小:227.50 KB
- 文档页数:20
计算机应用技术实验指导书
(通信工程专业)
吉林大学珠海学院电子信息系
DEBUG调试工具
1.打开机器单击开始
2.单击运行弹出运行窗口
输入cmd 单击确定,则进入:窗口
Microsoft Windows XP [版本5.1.2600]
(C) 版权所有1985-2001 Microsoft Corp.
C:\Documents and Settings\Administrator>光标闪烁输入字母DEBUG 回车
—进入调试工具DEBUG
DEBUG调试程序
是MS DOS(Microsoft Operating System)磁盘操作系统提供的实用程序。该程序可编辑、汇编、反汇编,调试和运行简单的8086汇编语言程序。
一、DEBUG命令特征
1.-为进入DEBUG的提示符,其后可输入命令。
2.提示符后命令为单一字符,它的后面可跟一个或多个参数。命令与参数可用大写,小写或大小写混合方式输入。
3.命令与参数可用分隔号(空格或逗号)隔开,2个连续的十六进制值之间必须用分隔号隔开。下列命令等效:
-D CS:100 110
-D,CS:100 110
4.中断命令时,可按Ctrl+Break键。
5.每一个命令,在按回车键之后有效。
6.对于产生大量输出命令,可按Ctrl+Numlock,使显示停止向上卷动,以便阅读。再按任意键即可继续显示输出。
7.各种控制键及各种DOS编辑键,在DEBUG中都可使用。
8.若输入某行发生语法错误,则显示这一行,指出错误所在。
如:-D CS:100 CS:110
^Error
这时可重新输入。
9.DEBUG命令中使用地址格式
[<段地址>:] <偏移地址>
其中段地址可以是段寄存器名,也可以是十六进制值,也可以缺省。系统默认十六进制值,其后不用加H。
如:-D CS:100
-D 92F:100
-D 100 (使用约定段)
命令地址范围的格式:[<段地址>:]<始偏移地址> <末偏移地址>
或[<段地址>:]<始偏移地址> L<表长>
如:-D CS:100 110
-D 92F:100 L10
二、DEBUG命令使用规则
1.所有输入的数字值,全为十六进制数,可输入1—4个十六进制数字字符。
2.重复前缀、LOCK前缀助记符在相关指令之前输入,也可置于不同的行。
3.可以使用段超越助记符,如CS:,DS:,ES:,SS:。
4.串操作助记符,必须说明是字节还是字操作。
5.跨段返回时的助记符为RETF。
6.DEBUG能自动汇编短,近和远的转移和调用。可用NEAR和FAR前缀。
如:0100:0500 JMP 502 ; 2字节短转移指令
0100:0600 JMP NEAR 608 ; 3字节近转移指令
0100:0800 JMP FAR 70A ; 5字节远转移指令
7.可用BYTE PTR(或缩写BY)前缀表示字节存储单元,WORD PTR(或缩写WO)前缀表示字存储单元,说明操作数类型。
如:ADD BYTE PTR[128], 10
DEC WORD PTR[SI]
8.操作数若为立即数,可直接写出,对直接寻址的存储单元加方括号[]。
如:MOV AX, 1A87 ; AK←1A87H
MOV BX, [1000] ; BX←[1000H]
9.可使用DB或DW直接把字节或字数据送入相应存储单元。
如:DB 1, 3, 5, 'THIS IS AN EXAMPLE'
DW 1000, 5000, 'BACH'
10.支持各种形式寄存器间接寻址命令。
如:ADD BX, 34[BX][SI-1]
POP [BP+DI]
三、DEBUG启动和初始化
1.启动命令
C:\>DEBUG [驱动器名:] [路径] [文件名[.扩展名]] [参数]
如:A:\>DEBUG prt.exe
-XXXX:0100
2.初始化
DEBUG程序启动后,初始化各寄存器和标志位的内容和状态。
(1)段寄存器(CS,DS,ES和SS)置于自由存储空间的底部.即DEBUG程序结束后第一个段。
(2)指令指针IP置为0100。
(3AX,BX,CX,DX,BP,SI,DI置为0。如果调用DEBUG时包含一个要调试的文件标识符,则文件长度包含在BX和CX中(高位部分在BX中)。
(4除IF外其它标志位置0。
当DEBUG调用*.EXE文件,则把段寄存器,堆栈栈顶指针SP置为文件所规定的值。
四、DEBUG命令
1.汇编命令
格式:-A [地址]
功能:由指定地址开始,输入汇编语言语句,A命令把它们汇编成机器码后,从指定地址单元开始连续存放。若在命令中没指定地址,前面用过汇编命令,则接着上一汇编指令的最后一个单元开始存放。A命令用无命令Enter或CTRL+C退出。
如:A:\>DEBUG
-A
XXXX:0100 MOV AL, 40
0102 MOV CH, 20
0104 JMP 10F
0106 DB 'DATA$'
010B DW 12345678
010F MOV AH, 01
0111 INT 20
0113 ^C ; 按Ctrl+C键退出。
上例中XXXX表示开始的段地址,随使用DOS版本及内存大小不同而不同。
下图以P111第16题为例,说明其编辑、运行的过程。