DOS的debug命令大全

合集下载

DOS的debug命令大全

DOS的debug命令大全

DOS的提示符下,可如下键入Debug启动调试程序:DEBUG [路径\文件名] [参数1] [参数2]Debug后可以不带文件名,仅运行Debug程序;需要时,再用N和L命令调入被调试程序。

命令中可以带有被调试程序的文件名,则运行Debug的同时,还将指定的程序调入主存;参数1/2是被调试程序所需要的参数。

在Debug程序调入后,根据有无被调试程序及其类型相应设置寄存器组的内容,发出Debug的提示符“-”,此时就可用Debug命令来调试程序。

∙运行Debug程序时,如果不带被调试程序,则所有段寄存器值相等,都指向当前可用的主存段;除SP之外的通用寄存器都设置为0,而SP指示当前堆栈顶在这个段的尾部;IP=0100h;状态标志都是清0状态。

∙运行Debug程序时,如果带入的被调试程序扩展名不是.EXE,则BX.CX 包含被调试文件大小的字节数(BX为高16位),其他同不带被调试程序的情况。

∙运行Debug程序时,如果带入的被调试程序扩展名是.EXE,则需要重新定位。

此时,CS : IP和SS : SP根据被调试程序确定,分别指向代码段和堆栈段。

DS=ES指向当前可用的主存段,BX.CX包含被调试文件大小的字节数(BX为高16位),其他通用寄存器为0,状态标志都是清0状态。

Debug的命令都是一个字母,后跟一个或多个参数:字母 [参数]命令的使用中注意:①字母不分大小写;②只使用16进制数,没有后缀字母;③分隔符(空格或逗号)只在两个数值之间是必须的,命令和参数间可无分隔符;④每个命令只有按了回车键后才有效,可以用Ctrl+Break中止命令的执行;⑤命令如果不符合Debug的规则,则将以“error”提示,并用“^”指示错误位置。

许多命令的参数是主存逻辑地址,形式是“段基地址 : 偏移地址”。

其中,段基地址可以是段寄存器或数值;偏移地址是数值。

如果不输入段地址,则采用默认值,可以是缺省段寄存器值。

汇编DEBUG命令详解

汇编DEBUG命令详解

DEBUG命令详解DEBUG是DOS中的一个外部命令,从DOS 1.0起就带有此命令,因此可见此命令的重要性了。

虽然此命令的功能非常强大,可以解决许多问题,可是对许多人来说,尤其是初学者来说,却非常不易掌握。

因此,现将DEBUG的命令详细介绍一番,以让大家知道它的使用。

Debug:A(汇编)直接将 8086/8087/8088 记忆码合并到内存。

该命令从汇编语言语句创建可执行的机器码。

所有数值都是十六进制格式,必须按一到四个字符输入这些数值。

在引用的操作代码(操作码)前指定前缀记忆码。

a [address]参数address指定键入汇编语言指令的位置。

对 address 使用十六进制值,并键入不以“h”字符结尾的每个值。

如果不指定地址,a 将在它上次停止处开始汇编。

有关将数据输入到指定字节中的信息,请单击“相关主题”列表中的 Debug E(键入)。

有关反汇编字节的信息,请单击“相关主题”列表中的 Debug U(反汇编)。

说明使用记忆码段的替代记忆码为 cs:、ds:、es: 和 ss:。

远程返回的记忆码是 retf。

字符串处理的记忆码必须明确声明字符串大小。

例如,使用 movsw 可以移动 16 位的字串,使用 movsb 可以移动 8 位字节串。

汇编跳转和调用汇编程序根据字节替换自动将短、近和远的跳转及调用汇编到目标地址。

通过使用 near 或far 前缀可以替代这样的跳转或调用,如下例所示:-a0100:05000100:0500 jmp 502 ; a 2-byte short jump0100:0502 jmp near 505 ; a 3-byte near jump0100:0505 jmp far 50a ; a 5-byte far jump可以将 near 前缀缩写为 ne。

区分字和字节内存位置当某个操作数可以引用某个字内存位置或者字节内存位置时,必须用前缀 word ptr 或者前缀 byte ptr 指定数据类型。

debug常用命令

debug常用命令

Debug命令
键入命令E :带list参数。 list 值可以是十六进制字节串或字符串。使用空 格、逗号或制表符来分隔值。必须将字符串包括 在单或双引号中。
Debug命令
填充命令F:
使用指定的值填充指定内存区域中的地址。 可以指定十六进制或 ASCII 格式表示的数据。任何以 前存储在指定位置的数据将会丢失。 格式:f range list 参数
Debug命令
比较命令C
相同,则不显示任何内容,否则将不同处按如下格式显示: address1 byte1 byte2 addess2
Debug命令
寄存器命令R
显示所有寄存器内容或修改指定寄存器内容 格式:r [寄存器名] 若不带参数,则显示所有寄存器内容; 若带寄存器名,则首先显示内容,然后等待修改。
range:指定要填充内存区域的起始和结束地址,或起始地 址和长度。 list::指定要输入的数据。List 可以由十六进制数串或单/双 引号包括起来的字符串组成。
Debug命令
填充命令F:
如果 range 包含的字节数比 list 中的数值大,Debug 将在 list 中反复指 派值,直到 range 中的所有字节全部填充。
• Debug 命令中的 range 参数指定了内存的范围,可 以为 range 选择两种格式:
– 起始地址和结束地址 – 起始地址和长度(由字母l后跟十六进制数表示)
显示命令d [range]
– 当使用 d 命令时,Debug 以两个部分显示内存内容:十六进 制部分(每个字节的值都用十六进制格式表示)和 ASCII 码 部分(每个字节的值都用 ASCII 码字符表示)。每个非打印字 符在显示的 ASCII 显示命令d [range] 部分由句号 (.) 表示。每个显示行显示 16 – 字节的内容,第 8 字节和第 9 字节之间有一个连字符。每个 显示一定范围内存地址的内容。 显示行从 16 字节的边界上开始。 – 参数range 指定要显示其内容的内存区域的起始和结束地址,或起始地址 和长度。 – 如果不指定 range,将从以前 d 命令中所指定的地址范围的末 尾开始显示 128 个字节的内容。

debug常见命令使用说明

debug常见命令使用说明

五、DEBUG调试程序DEBUG.EXE程序是专门为分析、研制和开发汇编语言程序而设计的一种调试工具,具有跟踪程序执行、观察中间运行结果、显示和修改寄存器或存储单元内容等多种功能。

它能使程序设计人员或用户触及到机器内部,因此可以说它是80X86CPU的心灵窗口,也是我们学习汇编语言必须掌握的调试工具。

1)DEBUG程序使用在DOS提示符下键入命令:C>DEBUG [盘符:][路径][文件名.EXE][参数1][参数2]这时屏幕上出现DEBUG的提示符“-”,表示系统在DEBUG管理之下,此时可以用DEBUG 进行程序调试。

若所有选项省略,仅把DEBUG装入内存,可对当前内存中的内容进行调试,或者再用N和L命令,从指定盘上装入要调试的程序;若命令行中有文件名,则DOS把DEBUG 程序调入内存后,再由DEBUG将指定的文件名装入内存。

2)DEBUG的常用命令(1)汇编命令A格式:A[起始地址]功能:将输入源程序的指令汇编成目标代码并从指定地址单元开始存放。

若缺省起始地址,则从当前CS:100地址开始存放。

A命令按行汇编,主要是用于小段程序的汇编或对目标程序的修改。

(2)反汇编命令U格式1:U[起始地址]格式2:U[起始地址][结束地址|字节数]功能:格式1从指定起始地址处开始将32个字节的目标代码转换成汇编指令形式,缺省起始地址,则从当前地址CS:IP开始。

格式2将指定范围的内存单元中的目标代码转换成汇编指令。

(3)显示、修改寄存器命令R格式:R[寄存器名]功能:若给出寄存器名,则显示该寄存器的内容并可进行修改。

缺省寄存器名,则按以下格式显示所有寄存器的内容及当前值(不能修改)。

AX=0000 BX=0004 CX=0020 DX=0000 SP=0080 BP=0000 SI=0000DI=0000 DS=3000 ES=23A0 CS=138E IP=0000NV UP DI PL NZ NA PO NC138E:0000 MOV AX,1234-R AX ;输入命令AX 0014 ;显示AX的内容:;供修改,不修改按回车。

调试程序Debug常用命令

调试程序Debug常用命令

20122012-4-27
7
2)D命令(显示内存单元内容) ) 命令 显示内存单元内容) 命令(
格式3:_D DS: 长度↙ 格式3:_D DS:开始偏移地址 L 长度↙ 作用: 作用:显示指定段中从开始偏移地址起由长度指定的 字节单元的内容。 字节单元的内容。 :_D DS: 例:_D DS:4 L 5↙
20122012-4-27
2
1)R命令(查看和修改寄存器内容) ) 命令 查看和修改寄存器内容) 命令(
格式1:_R (_r 格式1:_R↙(_r↙) 作用:显示所有寄存器的内容。 作用:显示所有寄存器的内容。
20122012-4-27
3
1)R命令(查看和修改寄存器内容) ) 命令 查看和修改寄存器内容) 命令(
20122012-4-27
17
6)T命令(单步运行或跟踪) 命令(单步运行或跟踪)
格式2:_T 偏移地址↙ 格式2:_T =偏移地址↙ 作用:执行指定的偏移地址处的一条指令, 作用:执行指定的偏移地址处的一条指令,执行完后 停下来, 停下来,并显示所有寄存器内容及状态标志位的值和 下一条要执行的指令。 下一条要执行的指令。 :_T 0105↙ 例:_T =0105↙
20122012-4-27
9
3)E命令(修改内存单元内容) 命令(修改内存单元内容)
格式1:_E DS: 内容表↙ 格式1:_E DS:偏移地址 内容表↙ 作用: 作用:用内容表中内容去替换从偏移地址开始的内存 单元的内容。 单元的内容。 :_E DS: dsx’ AA↙ 例:_E DS:4 ‘dsx FF 00 AA↙
调试程序Debug 调试程序Debug 常用命令简介) (常用命令简介)
Debug的启动 Debug的启动

DOS下DEBUG教程

DOS下DEBUG教程

DOS下DEBUG教程•调试程序DEBUG的特点:1. 在受控环境中测试程序;2. 装入,显示或修改任何文件;3. 执行DOS程序;4. 完成磁盘实际读/写操作;5. 建立或汇编汇编语言程序。

•DEBUG的命令格式:[drive:][path] DEBUG[d:][p][filename][.ext][param...]其中:drive:是指定DEBUG文件的磁盘驱动器标识符,DEBUG是外部DO S命令,所以必须把它从磁盘读入内存。

若未指定,DOS将使用当前默认磁盘驱动器。

path: 是DOS查找DEBUG文件的一个子目录串表示的路径。

若未指定,DO S将使用当前工作目录。

d:是DEBUG将要调试的文件所在的磁盘驱动器。

p: 是查找DEBUG将要调试的文件所需的子目录路径,若未指定,DOS使用当前目录。

filename[.ext]是DEBUG将要调试的文件名。

param是将被调试的程序(或文件)的命令行参数。

附:DEBUG所完成的初始化动作,假定文件名没有,启动DEBUG:•段寄存器CS、DS、ES和SS置为DEBUG程序后的第一个段。

•指令指针寄存器IP置为100H(程序段前缀PSP后的第一个语句)。

•堆栈指针SP置为段末或暂驻部分的结束地址(其中较小的那个地址)。

•其余通用寄存器均置为0,标志寄存器置为下述状态。

•NV UP EI PL NE NA PO NC如果DEBUG命令行含有文件名,段寄存器DS和ES指向PSP。

寄存器B X和CX含有程序长度。

•DEBUG使用单字符命令:这些DEBUG命令主要参考清华大学计算机系列教材《IBM-C汇编语言程序设计》一书。

-D[address]或- D[range]例如,按指定范围显示存储单元内容的方法为:-D 100 120067C:0100 C7 D7 0D 0A 32 33 33 34 - D5 C5 B4 C6 30 10 42 0C ....2334....0.B.067C:0110 03 41 42 43 44 45 46 47 - 48 49 4A 4B 4C 4D 4E 4F .ABCDEFGHIJKLMNO 067C:0120 8B其中0100至0120是DEBUG显示的单元内容。

debug命令大全

debug命令大全
-r cx
:0014
-w
-q
冷启动:
-a 100
jmp ffff:0
int 20
-n a:
-r cx
:0007
-w
-q
2、加密dos内部命令
例如要加密 dir
用pctools或diskedit找 c:下的文件
-a 150
****:0150 db "cmos.dat",0
****:0159
-r cx
cx 0000
:60
-n save
-w
-q
-w 100 2 0 1
-q
(2)恢复cmos数据 进入debug
-a 100
****:*100 mov cx,0150
****:**** mov ah,3d
****:**** mov al,00
****:**** int 21
****:**** mov dx,1000
****:**** mov bx,ax
****:**** mov cx,0040
****:**** mov ah,3f
****:**** int 21
****:**** out 70,al
****:**** mov cx,0005
****:0115 loop 0115
****:**** in al,71
****:**** mov 【bx】,al
****:**** cmp ah,0e
****:**** jb 0123
****:**** add ah,80
-e e0:4c

DEBUG命令

DEBUG命令
②键入读文件命令-L[<内存地址>] ③将文件装入CS:<地址>开始的内存 ④BX和CX中存放计入文件的字节数 例: E:>DEBUG -N -L -R
•写文件
-W[<内存地址>] ①指定文件名
-N<文件名>
②将要写文件长度(字节数)放BX,CX中
③键入读文件命令-W[<内存地址>]
•输入命令I ---从某一I/0端口取得输入数据字节 I<端口号>
11.退出DEBUG命令Q(Quit) -Q
如:-T=100
-T=100 2
8.查找、比较和移动内存数据命令。S/C/M 对内存中的数据进行比较、移动及查找某
一特定字节。 •移动内存命令M(Move) 格式:M <源地址范围><目的地址>
如:-MDS:00 1F 100
•比较内存命令C(Compare) 比较两块存储区的内容,若不同,显示出
注意两点: ①<内存地址>的形式是段:偏移量。若未指定地址,则 DEBUG约定L、W命令使用CS段,而E命令使用DS段。 ②相对扇区号是0面0道1扇区为相对0,扇区数最大为 80H,即每次读写可达64KB。
如何将软盘的最后一个扇区全部写上“*” ??
10.其它命令 •十六进制的和差运算H
例: -H12 34 0046 FFDE -H655 8787 8DDC 7ECE
如:-U100
默认CS段
•对指定范围内的存储单元反汇编 -U rang 如: -U100 109
6.运行命令G(Go) -G[=address1] [address2 [address3…]} 从指定地址1开始运行,后面为断点地址。如不指定 则从当前CS:IP开始运行。

dos汇编debug基本命令程序

dos汇编debug基本命令程序

dos汇编debug基本命令程序DOS汇编(Debug)基本命令程序在学习和编写DOS汇编语言程序时,了解和掌握调试程序是非常重要的。

DOS提供了一个非常有用的调试器,即Debug。

Debug是一个基本的汇编语言调试程序,它可以让程序员在运行程序时进行单步执行,查看寄存器和内存的内容,以及进行程序的调试和错误修复。

本文将介绍DOS汇编(Debug)基本命令程序。

一、启动Debug要启动Debug,可以在DOS命令提示符下输入"debug"命令,然后按Enter键。

此时,会显示Debug的提示符"-",表示Debug 已经启动。

二、基本命令Debug提供了一系列命令,用于执行和调试汇编语言程序。

下面是一些常用的基本命令:1. a(assemble):将汇编指令翻译成机器码,并将其写入内存中。

例如,输入"a 100"表示从内存地址100开始输入汇编指令。

2. d(dump):显示内存中的内容。

可以使用"d"命令来查看内存中的指令和数据。

例如,输入"d 100"表示从内存地址100开始显示内存内容。

3. e(enter):修改内存中的指令或数据。

可以使用"e"命令来修改内存中的指令或数据。

例如,输入"e 100"表示修改内存地址100处的内容。

4. g(go):执行程序。

使用"g"命令可以让程序开始执行。

例如,输入"g"表示开始执行程序。

5. r(register):显示和修改寄存器的内容。

可以使用"r"命令来查看和修改寄存器的内容。

例如,输入"r ax"表示显示或修改AX寄存器的内容。

6. t(trace):单步执行程序。

使用"t"命令可以让程序以单步执行的方式运行。

debug命令大全

debug命令大全

DEBUG命令大全(看看有啥用)a) 常用DOS命令1) 查看目录命令DIR,它列出所指盘上的文件目录,如:C>DIR D:2) 拷贝命令COPY,它把一个或多个文件拷贝成副本,如:C>COPY EX1.EXE D:3) 改变当前目录,格式为:C>CD 目录名4) 退出子目录,格式为:C>CD .. ,将退出当前子目录到直接外层目录下。

b) 熟悉DEBUG的使用方法,运行各种命令,观察运行后的情况1.DEBUG程序的调用在DOS提示符下,可键入命令:C>DEBUG [d:][path][文件名]其中文件名是被调试交件的名字,它须是执行文件(EXE),在DEBUG程序调入后,出现提示符"一",此时,可键入所需的DEBUG命令.2.DEBUG的主要命令〈1〉显示内存单元内容的命令D,格式为-D[地址]或-D[范围](2)修改内存单元内容的命令E,它有两种格式1) 给定的内容代替指定范围的单元内容一E地址内容表例如其中FLWX"'"Y""'Z"和8D各占一个字节,用这五个字节代替原内存单元内容,HXH,句""'Z"将分别按它们的ASCII码值代入。

2〉逐个单元相继地修改:-E地址例如一E 10018E4:0100 89.78此命令是将原100号单元的内容89改为78。

78是程序员键入的(3)检查和修改寄存器内容的命令R,它有三种方式1〉显示CPU内部所有寄存器内容和标志位状态,格式为-RR命令显示中标志位状态的含义如下表所示标志名置位复位溢出overflow方向direction中断interrupt符号sign零zero辅助进位auxiliary carry奇偶parity进位carry OVDNEINGZRACPECY NVUPDIPLNZNAPONC2)显示和修改某个指定寄存器内容,格式为一R寄存器名例如打入: -R AX系统将响应如下:AX F1F4:表示AX当前内容为FlF4,此时若不对其作修改,可按ENTER键,否则,打入修改后内容,如:-R BXBX 0369:059F则BX内容由0369改为059F3)显示和修改标志位状态,命令格式为-RF系统将给出响应,如OV DN EI NG ZR AC PE CY一这时若不作修改可按ENTER键,否则在"一'号之后键入修改值,键入顺序任意。

常用DOS命令和DEBUG命令

常用DOS命令和DEBUG命令

DOS常用命令、目录操作类命令:.1、MD——建立子目录1.功能:创建新的子目录2.类型:内部命令3.格式:MD[盘符:][路径名]〈子目录名〉4.使用说明:(1)“盘符”:指定要建立子目录的磁盘驱动器字母,若省略,则为当前驱动器;(2)“路径名”:要建立的子目录的上级目录名,若缺省则建在当前目录下。

例:(1)在C盘的根目录下创建名为FOX的子目录;(2)在FOX子目录下再创建USER子目录。

C:\>MD FOX (在当前驱动器C盘下创建子目录FOX)C:\>MD FOX \ USER (在FOX 子目录下再创建USER子目录).2、CD——改变当前目录1.功能:改变当前目录2.类型:内部命令3.格式:CD[盘符:][路径名][子目录名]4.使用说明:(1)如果省略路径和子目录名则显示当前目录;(2)如采用“CD\”格式,则退回到根目录;(3)如采用“CD..”格式则退回到上一级目录。

例:(1)进入到USER子目录;(2)从USER子目录退回到子目录;(3)返回到根目录。

C::\>CD FOX \USER(进入FOX子目录下的USER子目录)C:\FOX\USER>CD.. (退回上一级根目录)C:\FOX>CD\ (返回到根目录)C:\>.3、RD——删除子目录命令1.功能:从指定的磁盘删除了目录。

2.类型:内部命令3.格式:RD[盘符:][路径名][子目录名]4.使用说明:(1)子目录在删除前必须是空的,也就是说需要先进入该子目录,使用DEL(删除文件的命令)将其子目录下的文件删空,然后再退回到上一级目录,用RD命令删除该目录本身;(2)不能删除根目录和当前目录。

例:要求把C盘FOX子目录下的USER子目录删除,操作如下:第一步:先将USER子目录下的文件删空;C:\>DEL C:\FOX\USER\*.*第二步,删除USER子目录。

C:\>RD C:\FOX\USER.4、DIR——显示磁盘目录命令1.功能:显示磁盘目录的内容。

DOS下debug使用

DOS下debug使用

一DOS中DEBUG命令的名词解释a (Assemble) 逐行汇编a [address]c (Compare) 比较两内存块c range addressd (Dump) 内存16进制显示d [address]或d [range]e (Enter) 修改内存字节e address [list]f (fin) 预置一段内存f range listg (Go) 执行程序g [=address][address...]h (Hexavithmetic) 制算术运算h value valuei (Input) 从指定端口地址输入i pataddressl (Load) 读盘l [address [driver seetor>m (Move) 内存块传送m range addressn (Name) 置文件名n filespec [filespec...]o (Output) 从指定端口地址输出o portadress byteq (Quit) 结束qr (Register) 显示和修改寄存器r [register name]s (Search) 查找字节串s range listt (Trace) 跟踪执行t [=address] [value]u (Unassemble) 反汇编u [address ]或rangew (Write) 存盘w [address[driver sector secnum>? 联机帮助二、DEBUG的主要命令1、显示存储单元的命令D(DUMP),格式为:_D[address]或_D[range]例如,按指定范围显示存储单元内容的方法为:-D 100 12018E4:0100 c7 06 04 02 38 01 c7 06-06 02 00 02 c7 06 08 02 G...8.G.....G... 18E$:0110 02 02 bb 04 02 e8 02 00-CD 20 50 51 56 57 8B 37 ..;..h..M PQVW.718E4:0120 8B其中0100至0120是DEBUG显示的单元内容,左边用十六进制表示每个字节,右边用ASCII字符表示每个字节,·表示不可显示的字符。

DEBUG主要命令

DEBUG主要命令

DEBUG主要命令DEBUG是为汇编语言设计的一种调试工具,它通过单步、设置断点等方式为汇编语言程序员提供了非常有效的调试手段。

1.DEBUG程序的调用在DOS的提示符下,可键入命令:C:>DEBUG [d:][path][文件名][参数1][参数2]其中文件名是被调试文件的名字,它必须是可执行文件(EXE),两个参数是运行被调试文件所需要的命令参数,在DEBUG程序调入后,出现提示符“-”,此时,可键入所需的DEBUG命令。

2.DEBUG的主要命令⑴显示内存单元内容的命令D,格式为:-D [地址] 或-D [范围]例如,显示指定范围内存单元内容的方法为:-D 100 1FF18E4:0100 47 06 04 02 38 01 47 06 -06 02 00 02 47 06 08 02 G...8.G.....G...18E4:0110 02 02 3B 04 02 68 02 00 -4D 20 50 51 56 57 8B 37 ..;..h..M PQVW.7 其中左边为十六进制表示形式,右边为ASCII码表示形式,“.”表示不可显示字符。

这里没有指定段地址,D命令自动显示DS段的内容。

⑵修改内存单元内容的命令E,它有两种格式1)用给定内容代替指定范围的单元内容,格式为:-E 地址内容表例如:-E DS:100 F358595A8D,即用F3,58,59,5A,8D五个字节代替内存单元DS:100到DS:104的内容。

2)逐个单元相继地修改,格式为:-E 地址例如:-E DS:10018E4:0100 89.78此命令是将0100单元内容89改为78。

78是程序员从键盘输入的。

程序员在修改完一个单元后,可按“空格”键继续修改下一单元内容,直至按“回车”键结束该命令。

⑶检查和修改寄存器内容的命令R,它有三种方式1)显示CPU内部所有寄存器内容和标志寄存器中的各标志位状态-R该命令可显示AX,BX,CX,DX,SP,BP,SI,DI,DS,ES,SS,CS,IP及标志寄存器内容。

DEBUG命令详解

DEBUG命令详解

DEBUG调试程序的使用一、DEBUG的启动在DOS系统提示符下,运行DEBUG命令即可启动。

命令格式:DEBUG [文件名全称]功能:启动DEBUG调试程序,并把指定名字的文件装载入内存,以供调试。

说明:启动DEBUG,实际就是让计算机执行DEBUG.EXE这个调试程序。

若该程序不在当前目录下,需要在命令中指定该程序所在的位置路径(包括其所在磁盘和文件夹)。

文件名全称指定要调试的文件名及其所在的位置路径。

若指定该选项,则在启动DEBUG时把该文件装载入内存,以供调试,该文件一般是EXE文件或COM文件。

若不指定该选项,则只启动DEBUG,不装载文件。

二、DEBUG常用命令1、D——显示内存单元内容的命令格式:D[开始地址[结束地址]]说明:①若“开始地址”和“结束地址”都指定,则显示指定地址范围内的内存单元的内容;若只指定“开始地址”,省略“结束地址”,则显示从“开始地址”开始的80H个字节的内容;若“开始地址”和“结束地址”都省略,则显示从上次显示的末字节单元的下一个字节开始的80H个字节的内容。

②“开始地址”可包含段地址,若省略段地址,则默认使用DS的值作段地址。

2、E——输入内容(修改内存单元内容)命令格式:E开始地址[数据表列]说明:①若指定数据表列,则用数据表列中的数据存入从指定地址开始的内存单元中;若省略数据表列,则先显示指定开始地址的内存单元的内容,等待你修改。

若需要修改,输入其内容,按空格键显示、修改下一个内存单元内容;若不需要修改,直接按空格键显示、修改下一个内存单元内容,修改完成后按回车键。

②“开始地址”可包含段地址,若省略段地址,则默认使用DS的值作段地址。

3、F——填充内容(修改内存单元内容)命令格式:F开始地址结束地址数据表列说明:①用数据表列中的数据存入由开始地址和结束地址指定范围内的内存单元。

若数据表列中的数据少于指定地址范围的内存单元数,则循环使用表列中的数据存入内存单元,若数据表列中的数据多于指定地址范围的内存单元数,则多余的数据被忽略。

DOS环境下常用命令及DEBUG使用方法

DOS环境下常用命令及DEBUG使用方法

XXXXXX实验报告课程名称:汇编语言实验名称:DOS环境下常用命令及DEBUG使用方法学号姓名:指导教师评定:____________________________ 签名:_____________________________一、实验目的熟悉DOS环境下常用的命令以及DEBUG调试工具的基本使用方法,为以后的实验打下基础。

二、实验器材计算机一台,DEBUG调试工具。

三、实验内容及步骤1、进入DOS环境开机——Windows——开始——运行——COMMAND——MSDOS西文方式2、进入DEBUG运行状态熟悉使用各条DEBUG命令在打开的COMMAND输入DEBUG,回车即进入DEBUG运行状态。

此时可以使用各条DEBUG命令。

(1)显示和修改寄存器的内容的命令R的用法:“—R[寄存器名|F]”“—R”命令可以显示所用寄存器的内容,包括标志寄存器的内容,以及当前CS:IP处的一条指令的机器码和汇编指令,还有涉及到的存储单元内容。

如:(2)显示指定范围内的内存单元内容的命令:“—D[ [段地址:] 起始偏移[终止偏移] ] ”如:(3)修改内存单元内容的命令:“—E [段地址:]起始偏移[修改内容列表]”用“—E”命令修改内存单元内容后可以再用“—D”命令检查是否修改成功,如:(4)填充内容列表命令:“—F[段地址:]起始偏移终止偏移填充内容列表”用“—F”命令修改内存单元内容后可以再用“—D”命令检查是否修改成功,如:(5)编写/修改汇编语句命令:“—A[ [段地址:]起始偏移]”不再继续编程时按回车结束编程。

如:(6)将指定地址范围的机器码反汇编成汇编指令命令:“—U[[段地址:]起始偏移[终止偏移]]”如:(7)单步跟踪进入命令:“—T[=[段地址:]起始偏移] [指令条数]”指令条数默认为一条指令,该命令可以从指定地址起执行指定条数指令后停下来,每条指令执行后均会显示寄存器内容和状态值。

debug十八命令讲解

debug十八命令讲解

DEBUG的十八命令讲解虽然Debug只是MS-DOS的一个外部命令,但它为我们编辑、调试程序提供了一个丰富的系统环境,曾红极一时的2.13汉字系统,就是吴晓军用Debug编辑生成的,可见其功能非同一般。

那么它到底有什么绝世武功呢?且看Debug绝学为您一一分解。

第一命令A(Assemble)招式:A[地址]功能:从指定地址开始(当地址缺省时,如果以前未用过此命令则从CS:100开始,如果以前用过此命令,则从它最后停止的地址开始,对输入的语句汇编到内存。

心法:1,支持8086/8087/8088指令集;2,可使用near或far修饰跳转或调用,near可缩写为ne;3,可以用word ptr 或byte ptr说明操作单元,word ptr可缩写为wo,byte ptr可缩写为by;4,支持伪指令db和dw;5,远返回助记符为retf;6,支持所有形式的寄存器间接寻址和所有操作码的同义词。

演练:请打开电脑跟我做(注:0B66是段地址,可能与您的不一样)。

c:\>Debug-a0B66:0100 jmp 1f0 '由于跳转地址未定,暂用1f0代替0B66:0103 db 0d,0a,07. 'Press enter key to return...',240B66:0123 mov al,00B66:0125 mov bx,2000B66:0128 mov cs,1Error 每行输完回车后,Debug自动检查语句是否正确,错误则给予提示,并要求重新输入0B66:0128 mov cx,10B66:012B mov dx,00B66:012E int 26 将A盘boot区装入内存ds:2000B66:0130 inc by [bx+1fd] 将ds:3fd字节加一0B66:0134 mov si,2000B66:0137 mov di,4000B66:013A cld0B66:013B mov cx,2000B66:013E repz0B66:013F movsb 将boot区从ds:20复制到ds:4000B66:0140 mov al,00B66:0142 mov bx,4000B66:0145 mov cx,10B66:0148 mov dx,00B66:014B int 26 把ds:400 boot区写回A盘0B66:014D mov dx,1030B66:0150 mov ah,90B66:0152 int 21 显示提示信息0B66:0154 xor ah,ah0B66:0156 int 16 从键盘读一字符0B66:0158 cmp al,0d0B66:015A jnz 154 是回车则退出,否则循环读0B66:015C int 200B66:015E 回车结束-a1000B66:0100 jmp 123 修正跳转地址0B66:0102 回车结束-rcxCX 0000:5e-wWriting 0005E bytes-q恭喜您,现在您已用Debug写出了第一个程序!各位可以用dir命令在当前目录查看一下,哈!不知什么时候已经在您的硬盘里安了家。

DOS下DEBUG 教程

DOS下DEBUG 教程

DOS下DEBUG 教程•调试程序DEBUG的特点:1. 在受控环境中测试程序;2. 装入,显示或修改任何文件;3. 执行DOS程序;4. 完成磁盘实际读/写操作;5. 建立或汇编汇编语言程序。

•DEBUG的命令格式:[drive:][path] DEBUG[d:][p][filename][.ext][param...]其中:drive:是指定DEBUG文件的磁盘驱动器标识符,DEBUG是外部DOS命令,所以必须把它从磁盘读入内存。

若未指定,DOS将使用当前默认磁盘驱动器。

path: 是DOS查找DEBUG文件的一个子目录串表示的路径。

若未指定,DO S将使用当前工作目录。

d:是DEBUG将要调试的文件所在的磁盘驱动器。

p: 是查找DEBUG将要调试的文件所需的子目录路径,若未指定,DOS使用当前目录。

filename[.ext]是DEBUG将要调试的文件名。

param是将被调试的程序(或文件)的命令行参数。

附:DEBUG所完成的初始化动作,假定文件名没有,启动DEBUG:•段寄存器CS、DS、ES和SS置为DEBUG程序后的第一个段。

•指令指针寄存器IP置为100H(程序段前缀PSP后的第一个语句)。

•堆栈指针SP置为段末或暂驻部分的结束地址(其中较小的那个地址)。

•其余通用寄存器均置为0,标志寄存器置为下述状态。

•NV UP EI PL NE NA PO NC如果DEBUG命令行含有文件名,段寄存器DS和ES指向PSP。

寄存器B X和CX含有程序长度。

•DEBUG使用单字符命令:这些DEBUG命令主要参考清华大学计算机系列教材《IBM-C汇编语言程序设计》一书。

-D[address]或- D[range]例如,按指定范围显示存储单元内容的方法为:-D 100 120067C:0100 C7 D7 0D 0A 32 33 33 34 - D5 C5 B4 C6 30 1042 0C ....2334....0.B.067C:0110 03 41 42 43 44 45 46 47 - 48 49 4A 4B 4C 4D4E 4F .ABCDEFGHIJKLMNO067C:0120 8B其中0100至0120是DEBUG显示的单元内容。

汇编debug命令大全

汇编debug命令大全

(11)写命令 ) 格式: 起始地址] 格式:W [起始地址 起始地址 功能: 功能: 将起始地址开始的数据写入由 CS:5CH处的文件控制块所指定的文件中。如果未 处的文件控制块所指定的文件中。 处的文件控制块所指定的文件中 指定地址则数据从CS:0100开始。 开始。 指定地址则数据从 开始 要写入文件的字节数应先放入BX和 中 注:要写入文件的字节数应先放入 和CX中。 文件大小为20字节 字节, 如:文件大小为 字节,则BX和CX中的内容应 和 中的内容应 设为: 设为: (CX)= 0014H ) (BX)=0000H ) 即: (BXCX)=00000014H ) 例 :N aa R bx R cx w cs:0 首先命名文件,名字为 首先命名文件,名字为aa; 其次把准备写入文件aa的字节数 其次把准备写入文件 的字节数 寄存器; 放入 BX和CX 寄存器 和 最后将代码段0000H单元开始的代码 最后将代码段 单元开始的代码 写入文件aa; 写入文件
(7)汇编命令 ) 格式: 起始地址 起始地址] 格式:A[起始地址 功能:允许键入汇编语言语句, 功能:允许键入汇编语言语句,并能把它们 汇编成机器代码, 汇编成机器代码,相继地存放在从指定地址开始的 存储区。 存储区。 把键入的数字均看成十六制数, 注:DEBUG把键入的数字均看成十六制数, 把键入的数字均看成十六制数 所以要键入十进制数,则其后必须加以标识符D。 所以要键入十进制数,则其后必须加以标识符 。 (8)反汇编命令 ) 格式1: 起始地址 起始地址] 格式 :U[起始地址 功能:从起始地址开始反汇编32个字节 个字节。 功能:从起始地址开始反汇编 个字节。 例:U100 如果地址被省略,则从上一个U命令的最后一 如果地址被省略,则从上一个 命令的最后一 条指令的下一个单元开始显示32个字节 个字节。 条指令的下一个单元开始显示 个字节。 格式2: 起始范围 起始范围] 格式 : U[起始范围 功能:对指定范围的存储单元进行反汇编。 功能:对指定范围的存储单元进行反汇编。 例:U100 10C

DEBUG命令集锦

DEBUG命令集锦

DEBUG是DOS操作系统中的一个外部命令,从DOS 1.0起就带有此命令。

利用此命令下的子命令,可以查看和修改寄存器、内存单元的内容;输入并执行汇编指令;可以查看(反汇编)代码段中的指令;可以对端口进行操作;可以对磁盘和磁盘文件进行操作;可以调试简单程序。

因此可见此命令的重要性了。

虽然此命令的功能非常强大,可以解决许多问题,可是对许多人来说,尤其是初学者来说,却非常不易掌握。

因此,现将学习汇编语言常用到的DEBUG的命令详细介绍一番,以让大家知道它的使用。

其他命令请参考其他详细资料。

1. A(汇编,ASSEMBLE)作用:直接将 8086/8087/8088 记忆码合并到内存(默认存到代码段中)。

该命令从汇编语言语句创建可执行的机器码。

所有数值都是十六进制格式,必须按一到四个字符输入这些数值。

在引用的操作代码(操作码)前指定前缀记忆码。

格式:A [ADDRESS]说明:ADDRESS指定键入汇编语言指令的位置。

对 ADDRESS 使用十六进制值,但键入时不以“H”字符结尾,如果十六进制数以字母开始,也不要在前面加“0”。

如果不指定地址,A 将在它上次停止处开始汇编。

例:在代码段中偏移地址为0200处存入指令MOV AX,BX (假定CS=0B49H)A 命令支持两个常用的伪指令:DB 操作码,将字节值直接汇编到内存,DW 操作码,将字值直接汇编到内存。

以下是两个伪指令的范例:A 命令支持所有形式的寻址方式和所有操作码同义词。

2. C(内存比较,COMPARE)作用:比较两个内存区域中的数据是否相同格式:C RANGE ADDRESS说明:①RANGE指定要比较的内存第一个区域的起始和结束地址,或起始地址和长度。

②ADDRESS指定要比较的第二个内存区域的起始地址。

如果内存第一个区域的内容和内存第二个区域的内容相同,DEBUG 将不显示任何内容而直接返回到DEBUG 提示符。

如果有差异,DEBUG 将按如下格式显示:ADDRESS1 BYTE1 BYTE2 ADDESS2例:比较DS:0000-DS:000F和ES:0000-ES:000F区域的数据以下命令具有相同效果:C 100,10F 300C 100 L10 300每个命令都对 100H 到 10FH 的内存数据块与 300H 到 30FH 的内存数据块进行比较。

在DOS下的DEBUG命令的详细用法

在DOS下的DEBUG命令的详细用法
在DOS下的DEBUG命令的详细用法 在DOS下的DEBUG命令的详细用法 名称 解释 格式 a (Assemble) 逐行汇编 a [address] c (Compare) 比较两内存块 c range address d (Dump) 内存16进制显示 d [address]或 d [range] e (Enter) 修改内存字节 e address [list] f (fin) 预置一段内存 f range list g (Go) 执行程序 g [=address][address...] h (Hexavithmetic) 制算术运算 h value value i (Input) 从指定端口地址输入 i pataddress l (Load) 读盘 l [address [driver seetor> m (Move) 内存块传送 m range address n (Name) 置文件名 n filespec [filespec...] o (Output) 从指定端口地址输出 o portadress byte q (Quit) 结束 q r (Register) 显示和修改寄存器 r [register name] s (Search) 查找字节串 s range list t (Trace) 跟踪执行 t [=address] [value] u (Unassemble) 反汇编 u [address ]或range w (Write) 存盘 w [address[driver sector secnum> ? 联机帮助 ? debug小汇编a命令 debug小汇编a命令是一个很有用的功能,许多的小程序都要他来做。 编一些小程序比汇编要来得方便,快洁。 在Debug中,中断是非常有用的,首先,让我们先了解一下中断。 所谓中断,其实,就是,当你做某事时,有人过来找你有其他事,你先放下手中的事(计算机中,称为保护现场) ,再去与叫你的那个人办事去,等完了,你又回,接着做刚才的事。这是个很通俗的讲法。 计算机在运行时,也会出现这种情况,我们叫之中断。 下面是他的一些常用中断向量的入口值详解:(记住哦,很用的...呵呵) IBM PC 中断 int10 ooH 屏幕方式设置 入口:AH=0,AL=显示方式代码(0--6) 0:40*25 黑白 1:40*25 彩色 2:80*25 黑白 3:80*25 彩色文本 4:320*200 彩色 5:320*200 黑白 6:640*200 黑白图形模式 7:80*25 单色字符(单色显示器) 0BH 色彩设置 入口:AH=0B,BL=0 设背景色,BH=0--15 BL=1 设调色码,BH=0--1 0CH 写图形点 入口:AH=0C,CX:DX=列号:行号,AL=颜色 ODH 读图形点 入口:AH=0D,CX:DX=列号:行号 返回:AL=颜色 0EH 在当前页、当前光标处写字符 入口:AH=0E,AL=字符的ASCII码,BL=前景色 OFH 显示器状态 入口:AH=0F 返回:AL=当前显示器方式,AH=屏幕列数,BH=当前页号 01H 光标设置 入口:AH=1,CH=光标起始行号(00--0C),CL=光标结束行号(00--0C) 注:CH > CL 02H 光标定位 入口:AH=2,BH=页号,DH:DL=起始行:列 03H 读光标位置 入口:AH=3,BH=页号。 返回:DH:DL=起始行:列 06H 窗口上卷 入品:AH=6,AL=窗口上卷行数,CH:CL-DH:DL 窗口坐标 注:AL=0 卷动整个窗口 07H 窗口下卷 入口:AH=7,AL=窗口下卷行数,CH:CL-DH:DL 窗口坐标 08H 读当前光标处字符和属性 入口:AH=8,BH=页号。 返回:AH:AL=字符的颜色:字符的ASCII码 注:颜色代码见下对照表 第 1 页
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

DOS的提示符下,可如下键入Debug启动调试程序:DEBUG [路径\文件名] [参数1] [参数2]Debug后可以不带文件名,仅运行Debug程序;需要时,再用N和L命令调入被调试程序。

命令中可以带有被调试程序的文件名,则运行Debug的同时,还将指定的程序调入主存;参数1/2是被调试程序所需要的参数。

在Debug程序调入后,根据有无被调试程序及其类型相应设置寄存器组的内容,发出Debug的提示符“-”,此时就可用Debug命令来调试程序。

∙运行Debug程序时,如果不带被调试程序,则所有段寄存器值相等,都指向当前可用的主存段;除SP之外的通用寄存器都设置为0,而SP指示当前堆栈顶在这个段的尾部;IP=0100h;状态标志都是清0状态。

∙运行Debug程序时,如果带入的被调试程序扩展名不是.EXE,则BX.CX 包含被调试文件大小的字节数(BX为高16位),其他同不带被调试程序的情况。

∙运行Debug程序时,如果带入的被调试程序扩展名是.EXE,则需要重新定位。

此时,CS : IP和SS : SP根据被调试程序确定,分别指向代码段和堆栈段。

DS=ES指向当前可用的主存段,BX.CX包含被调试文件大小的字节数(BX为高16位),其他通用寄存器为0,状态标志都是清0状态。

Debug的命令都是一个字母,后跟一个或多个参数:字母 [参数]命令的使用中注意:①字母不分大小写;②只使用16进制数,没有后缀字母;③分隔符(空格或逗号)只在两个数值之间是必须的,命令和参数间可无分隔符;④每个命令只有按了回车键后才有效,可以用Ctrl+Break中止命令的执行;⑤命令如果不符合Debug的规则,则将以“error”提示,并用“^”指示错误位置。

许多命令的参数是主存逻辑地址,形式是“段基地址 : 偏移地址”。

其中,段基地址可以是段寄存器或数值;偏移地址是数值。

如果不输入段地址,则采用默认值,可以是缺省段寄存器值。

如果没有提供偏移地址,则通常就是当前偏移地址。

对主存操作的命令还支持地址范围这种参数,它的形式是:“开始地址结束地址”(结束地址不能具有段地址),或者是:“开始地址 L字节长度”。

显示命令DD(Dump)命令显示主存单元的内容,它的格式如下(注意分号后的部分用于解释命令功能,不是命令本身):D [地址];显示当前或指定开始地址的主存内容D [范围];显示指定范围的主存内容例如,显示当前(接着上一个D命令显示的最后一个地址)主存内容:左边部分是主存逻辑地址,中间是连续16个字节的主存内容(16进制数,以字节为单位),右边部分是这16个字节内容的ASCII字符显示,不可显示字符用点“.”表示。

一个D命令仅显示“8行×16个字节”(80列显示模式)内容。

再如:-d 100;显示数据段100h开始的主存单元-d cs:0;显示代码段的主存内容-d2f0 L20;显示ds:2f0h开始的20h个主存数据E(Enter)命令用于修改主存内容,它有两种格式:E 地址;格式1,修改指定地址的内容E 地址数据表;格式2,用数据表的数据修改指定地址的内容格式1是逐个单元相继修改的方法。

例如,键入“e ds:100”,Debug显示原来内容,用户可以直接输入新数据,然后按空格键显示下一个单元的内容,或者按“-”键显示上一个单元的内容;不需要修改可以直接按空格或“-”键;这样,用户可以不断修改相继单元的内容,直到用回车键结束该命令为止。

格式2可以一次修改多个单元,例如:-e ds:100 F3`XYZ`8D;用F3/`X`/`Y`/`Z`/8D这5个数据替代DS:0100 ~ 0104的原来内容F(Fill)命令用于对一个主存区域填写内容,同时改写原来的内容,其格式为:F 范围数据表该命令用数据表的数据写入指定范围的主存。

如果数据个数超过指定的范围,则忽略多出的项;如果数据个数小于指定的范围,则重复使用这些数据,直到填满指定范围。

R(Register)命令用于显示和修改处理器的寄存器,它有三种格式。

R;格式1,显示所有寄存器内容和标志位状态例如,当我们刚进入Debug时,就可以执行该命令,显示示例如下:其中,前两行给出所有寄存器的值,包括各个标志状态。

最后一行给出了当前CS : IP处的指令;由于这是一个涉及数据的指令,这一行的最后还给出相应单元的内容。

R 寄存器名;格式2,显示和修改指定寄存器例如,键入“r ax”,Debug给出当前AX内容,冒号后用于输入新数据,如不修改则按Enter键。

RF;格式3,显示和修改标志位Debug将显示当前各个标志位的状态。

显示的符号及其状态如表F1.1所示,用户只要输入这些符号就可以修改对应的标志状态,键入的顺序可以任意。

汇编命令A(Assemble)用于将输入的汇编指令汇编成为机器代码保存于主存。

A [地址];从指定地址开始汇编指令A命令中如果没有指定地址,则接着上一个A命令的最后一个单元开始;若还没有使用过A命令,则从当前CS : IP开始。

输入A命令后,就可以输入8086指令,Debug将它们汇编成机器代码,相继地存放在指定地址开始的存储区中,记住最后要输入一个回车结束A命令。

进行汇编的步骤如下:①输入汇编命令A [地址],按回车。

Debug提示地址,等待你输入新指令;②输入汇编指令,按回车;③如上继续输入汇编指令,直到输入所有指令;④不输入内容就按回车,结束汇编,返回Debug的提示符状态。

A命令支持标准的8086(和8087浮点)指令系统以及汇编语言语句格式,但要注意以下一些规则:•所有输入的数值都是16进制数;•段超越指令需要在相应指令前,单独一行输入;•段间(远)返回的助记符要使用RETF;• A命令也支持最常用的两个伪指令DB和DW。

反汇编命令U(Unassemble)将主存内容按照机器代码形成汇编指令显示:U [地址];从指定地址开始,反汇编32个字节(80列显示模式)U 范围;对指定范围的主存内容进行反汇编U命令中如果没有指定地址,则接着上一个U命令的最后一个单元开始;若还没有使用过U命令,则从当前CS : IP开始。

屏幕显示的左边是主存逻辑地址,中间是该指令的机器代码,而右边则是对应的指令汇编格式。

运行命令G(Go)从指定地址处开始运行程序,直到遇到断点或者程序正常结束。

G [=地址] [断点地址1,断点地址2,...,断点地址10]G命令等号后的地址指定程序段运行的起始地址,如不指定则从当前的CS : IP 开始运行。

断点地址如果只有偏移地址,则默认是代码段CS;断点可以没有,但最多只能有10个。

程序遇到断点(实际上就是断点中断指令INT 3),停止执行,并显示当前所有寄存器和标志位的内容、以及下一条将要执行的指令(显示内容同R命令),以便观察程序运行到此的情况。

程序正常结束,将显示“Program terminated normally”。

注意,G命令以及后面的T和P命令要指向正确的指令代码,否则会出现不可预测的结果,例如“死机”。

跟踪命令T(Trace),也称为单步命令,每执行一条指令就显示运行结果,使程序员可以细致地观察程序的执行情况。

T [=地址];逐条指令跟踪T [=地址] [数值];多条指令跟踪从指定地址起执行一条或数值参数指定条数的指令后停下来,每条指令执行后都要显示所有寄存器和标志位的值以及下一条指令。

如未指定地址则从当前的CS : IP开始执行。

注意给出的执行地址前有一个等号,否则会被认为是被跟踪指令的条数(数值)。

T命令逐条指令执行程序,遇到子程序(CALL)或中断调用(INT n)指令也不例外,也会进入到子程序或中断服务程序当中执行。

继续命令P(Proceed)类似T命令,逐条执行指令、显示结果。

但是当遇到子程序调用、中断功能调用和循环指令等时,不在子程序、中断服务程序或循环体中单步执行,而是直接执行完成子程序、中断服务程序或循环体,然后显示结果。

当不需要调试子程序、中断服务程序或循环程序段时,要应用P命令,而不是T 命令。

P [=地址] [数值]继续命令P(Proceed)类似T命令,逐条执行指令、显示结果。

但是当遇到子程序调用、中断功能调用和循环指令等时,不在子程序、中断服务程序或循环体中单步执行,而是直接执行完成子程序、中断服务程序或循环体,然后显示结果。

当不需要调试子程序、中断服务程序或循环程序段时,要应用P命令,而不是T 命令。

P [=地址] [数值]命名命令N(Name)把一个或两个可以包含路径的文件全名存入Debug中,以便在其后用L或W命令把文件装入或存盘。

N 文件名1[,文件名2]装入命令L(Load)将磁盘中的文件或扇区内容装载到主存中。

L [地址];格式1:装入由N命令指定的文件格式1的L命令装载一个文件到给定的主存地址处。

L 地址驱动器扇区号扇区数;格式2:装入指定磁盘扇区范围的内容格式2的L命令装载磁盘的若干扇区(最多80h)到给定的主存地址处;缺省段地址是CS。

其中,0表示A盘,1表示B盘,2表示C盘,……。

写盘命令W(Write)主存内容写入磁盘的文件或扇区中,与L命令相反。

W [地址];格式1:将由N命令指定的文件写入磁盘格式1的W命令将指定开始地址的数据写入一个文件(这个文件应该已经用N 命令命名);如未指定地址则从CS : 100开始。

要写入文件的字节数应先放入BX(高字)和CX(低字)中。

如果采用这个W命令保存你的可执行程序,它的扩展名应是COM;它不能写入具有EXE和HEX扩展名的文件。

W 地址驱动器扇区号扇区数;格式2:把数据写入指定磁盘扇区范围格式2的W命令将指定地址的数据写入磁盘的若干扇区(最多80H);如果没有给出段地址,则缺省是CS。

其他说明同L命令。

由于格式2的W命令直接对磁盘写入,没有经过DOS文件系统管理,所以一定要小心,否则可能无法利用DOS 文件系统读写。

写盘命令W(Write)主存内容写入磁盘的文件或扇区中,与L命令相反。

W [地址];格式1:将由N命令指定的文件写入磁盘格式1的W命令将指定开始地址的数据写入一个文件(这个文件应该已经用N 命令命名);如未指定地址则从CS : 100开始。

要写入文件的字节数应先放入BX(高字)和CX(低字)中。

如果采用这个W命令保存你的可执行程序,它的扩展名应是COM;它不能写入具有EXE和HEX扩展名的文件。

W 地址驱动器扇区号扇区数;格式2:把数据写入指定磁盘扇区范围格式2的W命令将指定地址的数据写入磁盘的若干扇区(最多80H);如果没有给出段地址,则缺省是CS。

其他说明同L命令。

由于格式2的W命令直接对磁盘写入,没有经过DOS文件系统管理,所以一定要小心,否则可能无法利用DOS 文件系统读写。

相关文档
最新文档