今天学习了关于Debug的使用,以前老师好像是也说过,不过却什么也没有记下,今天突然要用了只能再找东西看看了.
一. Degug 的参数.
汇编assemble A [address]
比较compare C range address
倾倒dump D [range]
进入enter E address [list]
填充fill F range list
进行go G [=address] [addresses]
十六进制hex H value1 value2
输入input I port
装载load L [address] [drive] [firstsector] [number]
移动move M range address
命名name N [pathname] [arglist]
输出output O port byte
进行proceed P [=address] [number]
离开quit Q
纪录register R [register]
搜寻search S range list
描述trace T [=address] [value]
反汇编unassemble U [range]
写write W [address] [drive] [firstsector] [number]
分配扩展内存allocate expanded memory XA [#pages]
释放扩展内存deallocate expanded memory XD [handle]
map expanded memory pages XM [Lpage] [Ppage] [handle]
display expanded memory status XS
-q<按回车> (这是退出DEBUG回到DOS状态)This quits out of debug, returning to the prompt) DOS
二.几个小例子
1. 显示bios时间
PROMPT> DEBUG<按回车>
-D FFFF:0006 L 8<按回车> (显示 FFFFh, 偏移地址 6h, 长度 8 bytes)
2 . 搜寻字符
PROMPT> DEBUG C:/Win95/Command.com<按回车>
-S 0 L FFFF "IBM"<按回车>(从0开始搜寻"IBM",搜寻FFFFh多个单元格)
-Q<按回车> (退出DEBUG)
3. 一位十六进制数的运算:
PROMPT> DEBUG<按回车>
-H 9 1<按回车> (加减两个十六进制的数, 9h+1h=Ah & 9h-1h=8h)
结果是显示: 000A 0008
-Q<按回车> (退出DEBUG)
4) 检查x86寄存器内容
PROMPT> DEBUG<按回车>
-R<按回车> (显示x86寄存器内容)
-Q<按回车> (退出DEBUG)