正在进行安全检测...

发布时间:2023-11-14 03:43:41   来源:文档文库   
字号:
DEBUG命令2.3DEBUG使用方法简介:DEBUGDOS命令,必须在DOS环境下运行。由于目前都使用WINDOWS操作系统,应设法进入实地址模式的DOS环境,才能可靠地运行DEBUG一般可用DOS启动盘启动系统,或在WINDOWS-98系统退出时选择“切换到MSDOS"操作,进入到实地址模式的DOS环境。由于DEBUGDOS外部命令,因此,须把DEBUGEXE文件拷贝到当前目录下来运行DEBUGDOS启动盘中应事先拷贝有DEBUG.EXE文件,在WINDOWS98系统中,C:\WINDOWS\COMMAND\”目录下有DEBUG.EXE文件.后面的操作,假设DEBUG.EXE文件都已事先拷贝到当前目录下。WINDOWS操作系统中(包括WINDOWS982KXP等),系统提供了V86模式的“命令提示符”窗口,在此窗口中也能运行DEBUG,但DEBUG的某些功能会受到WINDOWS系统的限制。1.启动与退出DEBUG启动DEBUG,在DOS提示符下输入:DEBUG[回车]屏幕显示“-,表示已启动了DEBUG.-”是DEBUG子命令等待状态,后面所有的DEBUG操作(包括运行调试自编的汇编语言程序都是在此“—"提示符下所进行的DEBUG子命令执行.退出DEBUG,在“-”提示符下输入:Q[回车]屏幕显示DOS命令提示符:C\A:\2.进入与退出输入汇编指令:在“-”提示符下输入:A[偏移地址][回车]屏幕显示“〈段地址〉〈偏移地址>|",此处将等待你输入汇编语言程序或实验指令。当一条指令输入完毕[回车]后,又将自动出现下一对“〈段地址><偏移地址〉|”等待你输入下条指令,如此重复,将帮助你把整段汇编语言程序输入完毕.注意:如果输入汇编指令时手误,屏幕上将当场提示错误“ERROE,动地址不进步,还在原地址上等待你重新输入正确的汇编指令.DEBUG的这一特性可用来验证汇编指令的合法.在新出现的“<段地址>:<偏移地址>|”时直接输入[回车],可退出编程等待状态,回DEBUG子命令等待状态“-.3.查看与修改内存中的程序:在“-"提示符下输入:U[偏移地址][回车]屏幕将显示从指定的“偏移地址”开始的汇编语言程序段落。屏幕左部显示着每条指令的地址和指令代(即机器码,屏幕右部显示着汇编语言指令助记符,可帮助你理解或分析汇编语言指令或程序段落.继续在“-”提示符下输入:U[回车]可显示当前地址开始的后续汇编语言程序段落。在需要查看内存汇编语言程序段落或指令时,一般都在首次“U”子命令中用指定“偏移地址”,而后直接单打“U"继续查看,直到程序的结尾或不想查看为止.修改内存中的程序可先用“U"子命令查看相关程序段落,看准需要修改的指令所在地址(主要是偏移地,然后输入:A<要修改指令的偏移地址〉[回车]最后把新指令输入之后,及时空打回车退出程序输入状态,再用“U"子命令查看复验。4.运行与单步运行内存中的程序:在“—”提示符下输入:G=[起始地址,终止地址][回车]DEBUG就能从指定的起始地址开始,到终止地址之前,把这段内存中的汇编指令连续执行一遍,执行完毕,在屏幕上将显示出各寄存器的当前值,以便执行结果分析。在“—"提示符下输入:T=[起始地址][回车]DEBUG就能从指定起始地址开始,单步执行内存中的指令。每当一条指令执行完毕,屏幕上将显示出各寄存器的当前值,以供分析结果。如果要继续执行下一条指令,则继续键入“T"即可.5.查看与修改寄存器内容:在“—”提示符下输入:R[回车]DEBUG就能把所有寄存器的当前值全部显示在屏幕上,以供分析。在“-”提示符下输入:R[某寄存器名][回车]1/16
DEBUG命令DEBUG就能把指定寄存器的当前值显示在屏幕上,接着等待你输入新值。也可以空打[回车]退出修改.注意:不是所有寄存器都能用这种方法来修改其的值。6.查看与修改存储器内容:在“—”提示符下输入:D[起始地址,终止地址][回车]E屏幕将显示从指定的起始地址开始,到终止地址之间,这段内存中的十六进制数据,每行16个字节,屏幕最左端显示一行的起始地址,行内各字节的地址由行起始地址顺序推算。如果要继续显示后续的内存数据,则键入“D[回车]"即可。在“-”提示符下输入:E[偏移地址,新值][回车]DEBUG就能把指定“偏移地址"处的字节内容修改成新值。也可以先输入:E[偏移地址][回车]DEBUG就能把指定“偏移地址”处的字节内容先显示出来,接着等待你输入新值。用这种操作来修改存储器的内容,即先看见后修改,比较安全,不会越改越错。7.内存块复制与填数:在“-”提示符下输入:M[起始地址,终止地址,目标地址][回车]DEBUG就能把从指定的起始地址开始,到终止地址之间的内存数据复制到目的地址开始的存储器中。在“-”提示符下输入:F[起始地址,终止地址,新值][回车]DEBUG就能从指定的起始地址开始,到终止地址之间,对这块内存用“新值"填满每个存储单元.这条子命令用来对一块内存清除杂数很用效,也可以用来对一片内存建立一批相同的原始数据等操作。8.数据块输出与输入:数据块输出要做三个连续动作:先在“-提示符下输入:N〈盘符路径文件名>[回车]再把数据块长度值设置到BXCX两个寄存器里,即在“—"提示符下输入:RBX〈数据块长度高16位值〉[回车]RCX〈数据块长度低16位值>[回车]最后,在“-提示符下输入:W〈数据块起始地址〉[回车]DEBUG就能把指定起始地址开始的数据块以二进制数据形式保存为指定的文件,输出的数据块长度决定了该文件的长度.文件在指定磁盘和路径下以新文件形式建立或覆盖同名老文件。建议:按习惯,这种二进制数据文件的扩展名取“。BIN".如果想用其他扩展名,也可以,只不过文件的数据还是二进制格式。数据块输入只要做两个连续动作:先在“-提示符下输入:N<盘符路径文件名>[回车]再在“—”提示符下输入:L〈偏移地址〉[回车]DEBUG就能把指定的二进制数据文件装入指定偏移地址开始的一片连续存储器单元中。其长度由该数据文件长度决定.一般这种二进制数据文件的扩展名取“.BIN”。9.程序段落输出与输入:程序段落的输出操作与数据块的输出操作一样,只是所保存的文件内容是二进制的指令代码序列。这种程序段落保存到磁盘时必须用“。COM”作为文件名的扩展名,否则,保存后的文件不能在DOS环境中运行。DEBUG拒绝以“。EXE”扩展名保存文件。程序段落的输入操作与数据块不同,以“.COM”作为扩展名的程序文件,DEBUG规定它只能装入0100H偏移地址开始的内存,如果过要装入任意地址的内存,则应该事先在DOS环境下把“。COM”作为扩展名的程序文件改名为“。BIN”扩展名。10.DEBUG常用子命令列表:DEBUG子命令功能A汇编2/16

本文来源:https://www.2haoxitong.net/k/doc/9f6cd9b6b107e87101f69e3143323968001cf410.html

《正在进行安全检测....doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式