全站搜索

DEBUG 命令使用详解

2004-02-16   作者:QMQ 整理   阅读量:

    

Debug:L(加载)

将某个文件或特定磁盘扇区的内容加载到内存。

要从磁盘文件加载 BX:CX 寄存器中指定的字节数内容,请使用以下语法:

l [address]

要略过 Windows 2000 文件系统并直接加载特定的扇区,请使用以下语法:

l address drive start number


参数

address

指定要在其中加载文件或扇区内容的内存位置。如果不指定 address,Debug 将使用 CS 寄存器中的当前地址。

drive

指定包含读取指定扇区的磁盘的驱动器。该值是数值型:0 = A, 1 = B, 2 = C 等。

start

指定要加载其内容的第一个扇区的十六进制数。

number

指定要加载其内容的连续扇区的十六进制数。只有要加载特定扇区的内容而不是加载 debug 命令行或最近的 Debug n(名称)命令中指定的文件时,才能使用 drive、start 和 number 参数。

有关指定用于 l 命令的文件的信息,请参看Debug n(名称)。

有关写入调试到磁盘的文件的信息,请参看Debug w(写入)。


注意

使用不带参数的 l 命令

当使用不带参数的 l 命令时,在 debug 命令行上指定的文件将加载到内存中,从地址 CS:100 开始。Debug 同时将 BX 和 CX 寄存器设置为加载的字节数。如果不在 debug 命令行指定文件,所装入的文件将是最近使用 n 命令经常指定的文件。


使用具有 address 参数的 1 命令

如果使用带 address 参数的 l 命令,Debug 将从内存位置 address 开始加载文件或指定扇区的内容。


使用带全部参数的 l 命令

如果使用带所有参数的 l 命令,Debug 将加载指定磁盘扇区的内容而不是加载文件。


加载特定扇区的内容

指定范围内的每个扇区均从 drive 读取。Debug 从 start 开始加载,直到在 number 中指定的扇区数中的内容全部被加载。


加载 .exe 文件

Debug 忽略 .exe 文件的地址 address 参数。如果指定 .exe 文件,Debug 将文件重新定位到 .exe 文件的标题中指定的加载地址。在 .exe 文件被加载到内存前,标题自身从 .exe 文件脱离,因此磁盘上的 .exe 文件大小与内存中的不同。如果要检查整个 .exe 文件,请使用不同的扩展名重命名文件。


打开十六进制文件

Debug 将具有 .hex 扩展名的文件认为十六进制格式文件。键入不带参数的 l 命令,可以加载从十六进制文件中指定的地址处开始的十六进制文件。如果键入的 l 命令包含 address 参数,Debug 将把指定的地址加到在十六进制文件中找到的地址上,以确定起始地址。


范例

假定启动 Debug 并键入以下命令:

nfile.com

现在可以键入 l 命令以加载 File.com。Debug 将加载文件并显示 Debug 提示符。

假定需要从驱动器 C 将起始逻辑扇区为 15 (0Fh) 的 109 (6Dh) 个扇区的内容加载到起始地址为 04BA:0100 的内存中。为此,请键入以下命令:
l04ba:100 2 0f 6d

责任编辑:yuan
文章来源:PCICP   2004-02-16