debug是什么意思啊(bug是什么意思啊)

龙途教育 1次浏览

摘要:debug什么意思 debug是dos中的一个外部命令,从dos 1.0起就带有此命令,因此可见此命令的重要性了。虽然此命令的功能

debug什么意思

debug是dos中的一个外部命令,从dos 1.0起就带有此命令,因此可见此命令的重要性了。虽然此命令的功能非常强大,可以解决许多问题,可是对许多人来说,尤其是初学者来说,却非常不易掌握。因此,现将debug的命令详细介绍一番,以让大家知道它的使用。

debug是什么意思啊(bug是什么意思啊)debug是什么意思啊(bug是什么意思啊)


debug是什么意思啊(bug是什么意思啊)


debug是什么意思啊(bug是什么意思啊)


debug是什么意思啊(bug是什么意思啊)


debug是什么意思debug是什么意思

debug命令DEBUG命令参数详解DEBUG是一个DOS实用程序,是供程序员使用的程序调试工具,可以用它检查内存中任何地方的字节以及修改任何地方的字节。它可以用于逐指令执行某个程序以验证程序运行的正确性,也可以执行过程、比较一个指令执行前后的值以及比较与移动内存中数据的范围,读写文件与磁盘扇区。它的功能包括以下几个方面。1,直接输入,更改,跟踪,运行汇编语言源程序;2,观察作系统的内容;3,查看ROMBIOS的内容;4,观察更改RAM内部的设置值;5,以扇区或文件的方式读写软盘数据DEBUG把所有数据都作为字节序列处理。因此它可以读任何类型的文件。DEBUG可以识别两种数据:十六进制数据和ASCⅡ码字符。它的显示格式是各个字节的十六进制值以及值在32与126之间的字节的相应ASCⅡ码字符。在DEBUG中输入数据有两种方法:提示方法和非提示方法。在用提示方法时,用户可以输入要求输入数据的命令,后跟数据所要输入的地址。然后用户就可以看到该地之中已有内容及一个冒号提示符。此时用户可以在提示符下输入一个新的值或者按下回车键或CTRL+C回到短横(-)提示符。在运用非提示方法时,用户可以输入要输入数据的内存地址以及要输入的字节。但与使用字处理程序或正文编辑程序时不一样,在使用DEBUG时,用户不能直接移动光标到一入口点输入或修改数据,而要一次输入一个或几个字节。在使用DEBUG时可以只涉及内存中的数据,从而一般都要指定所要处理的内存地址,地址的输入格式是:[段地址]:[位移]。如果没有输入地址,DEBUG将定为当前内存段,从位于地址100H的字节开始。前100H字节保留给程序段前缀使用,这一专用区域用于建立DOS与程序之间的联系。DEBUG总是用四位十六进制数表示地址。用两位数表示十六进制数据。讲到这里大家应该对DEBUG有了初步的了解,但是光知道这些可不够,接下来我来讲讲DEBUG的命令格式和命令。当输入DEBUG调用了DEBUG程序,就会出现一个短横提示符,用户就可以在这一短横后输入DEBUG程序的命令。有些DEBUG命令会显示一个内存地址并产生一个作为提示符的冒号。在这些提示符后,用户可以输入一个新值以改变所显示位置原来的值。如果用户不输入一个新值而是按下回车或CTRL+C,那么原来的值不会改变。一般用不着把地址和命令名字分开。例如,用转储命令D察看100号地址的数据,那么这个命令可以用以下任一种形势输入:D100D100D。100D,100如果输入的命令中出现了错误,DEBUG将在下一行对着错误的位置标记出来,例如:-s100d12^ErrorDEBUG的命令及功能如下:A[地址]汇编命令功能:将指令直接汇编成机器码输入到内存中。说明:用于小段程序的汇编及修改目标程序,所有输入的数字均采用十六进制,用户装入内存的汇编语句是连续存放的,若没有指定地址,并且前面没有使用汇编命令,改语句被汇编到CS:0100区域。例A:>DEBUG-a010008F1:0100MOVAH,0908F1:0102MOVDX,10908F1:0105INT21H;08F1:0107INT21H;debugtan.exe-u:反编译成汇编语言程码…………..-g100指定中断点Programterminatednormally:另外:我们在DEBUG下可运行一个文件.EXE如:A:>debugtan.exe-g即可开始运行此程序,和在DOS下完全一样:H[数值][数值]十六进制算术运令功能:分别显示两个十六进制数相加的和以及个数减去第二个数的。说明:替用户完成简单的十六进制数的运算。例:-h453856239B5BEF15I[端口地址]功能:从指定的端口输入并显示(用十六进制)的一个字节。例:-i70F9;显示70端口的内容为F9I命令可由80X86的64K个端口取数据L[地址][盘号:][逻辑扇区号][扇区数]功能:将一个文件或盘的扇区装入存储器。说明:单个L命令能够装入的扇区数是80H,其中盘号0,1,2,3……分别代表A,B,C,……出现读盘错,显示错误信息。(1)格式1.L装入地址驱动器名起始扇区/扇区数这种方式可把磁盘上指定扇区范围的内容装入到存储器从指定地址开始的区域中,在此外扇区编号引用逻辑/扇区的方式。例:-L100001,将A驱的0扇区装至CS:100上-d10010f08F1:0100EB3C903C53444F53-362E323202010100.L,MSDOS6.22……(2)格式2:L装入地址这种方式可把指定文件装入内存,装入的文件可在进入DEBUG时指定亦可用N命令建立,格式为-n文件名:例1DEBUGtan.pas-L100例2DEBUG-ntan.pas-L100须知:L命令只能读取逻辑扇区,不能读取硬盘分区表L命令中所用的磁盘代码A=00,B=01,C=02……M[地址范围][起始地址]数据传送命令功能:把地址范围内的存储器单元的内容移到起始地址的指定地址中说明:传送期间,源区和目标区可以部分重叠;传送后源区域数据保持不变。例:-e1004142434445-d10010f08F1:0100414243444562626364-6162636461626364ABCDEBCDABCDABCD-M100104110-d110L1F08F1:0100414243450A2119-200101200796879FABCDE……N[盘号:][路径][文件名][扩展名]功能:定义作文件名。说明:可同时定义两个作文件,并将形成的文件控制块相应的设置在内存CS:5C和CS:6C上,供以后的L和W命令作之用。我们在运行程序侦错时,在启动DEBUG时在其后加文件程序名以及该程序的参数或运行文件,但当我们侦错一段后,可能装入其它文件来测试,这时我们可利用N命令来设置而无需退出DEBUG。例:A:>DEBUGtan.exe-nyoug.pas当程序侦错一段时间后,若要把tan.exe装入tan1.pas则-ntanl.pasO[端口地址][数据]输出命令功能:发送字节到指定的输出端口。例:当我们遇到开机要求输入口令时,可用如下方式取消-O7010_O7100P[=地址][数据]进程命令功能:将一个子程序调用指令,循环指令,中断指令或一个重复字符串指令,停止在下一条指令上。说明:在执行一条子程序调用指令,循环指令,中断指令或一个重复字符串指令时,发出P命令去执行有关指令,并且返回到要执行的下一条指令。P命令和T一样选用来跟踪程序运行过程用的命令,我们可以在P命令中指定程序运行的起始地址,指令个数,如未指定则CS:IP所指定程序的地址开始一次运行一条令。P与T命令的别在于P命令把CALL/INT当成一条指令来执行,简化了跟踪过程,P命令只运行RAM内存的命令,而T命令则可运行RAM和ROM里的程序。Q退出命令。R[寄存器]寄存器命令功能:一,显示单个寄存器的内容,并提供修改功能。二,显示所有寄存器内容,再加上字母标志位状态以及要执行的下一条指令。三,显示8个标志位状态,并提供修改功能。若不想改变则回车即可。例:-rbxbx0050:51-rAX=0000BX=0051CX=0000SP=FFEEBP=0000SI=0000DI=0000DS=0003ES=0CD3SS=0CD3IP=0100NVUPEIPLNZNAOPNC0CD3:01000FDBOF若想改变标志寄存器,用-RF回车,则DEBUG会将标志内容显示出来,若想改变任一标志,只要输入该标志的名称即可。标志名称设置未设置标志名称设置未设置滋出OV(未溢出)NV(未溢出)零位ZRNZ(不等于零)方向DN(减少)UP(增加)辅助进位ACNA(无进位)中断EI(许可)DI(禁止)奇偶标志PE(偶)PO(奇)符号NG(负)PL(正)进位CYNC(清除进位)例:-RfNVUPEIPLNZNAPONC:-OVDI←输入值S[地址范围][字符串]功能:在指定的地址范围内查找给定的字符串。说明:用来指定在地址范围内查找一个字符串,若找到则显示其地址,否则直接显示DEBUG提示符。隐含地址为DS段值。在此内存可以用(起始地址)(终止地址)或(起始地址)L(长度)的方式来表示,而字符串与数据行则可混合使用:如:02.76"BC"。例:-d100lof08F1:0100OF2A41430B314296-FFF0B98AF300B1..AC,1B-S100lof"AC"08F1:0102←表示找到,由0102开始,T[=地址][指令条数]跟踪命令功能:逐条跟踪程序的执行,每条指令执行后都将显示各寄存器的内容。说明:通常采用跟踪一条指令,但用户也可以用指令条数设定一次跟踪多条指令,每执行一条指令之后,显示所有寄存器的内容和标志状态。逐条指令跟踪-T[=起始地址]从指定地址起执行一条指令后停下来,显示所有寄存器内容及标志位的值,指定地址则从当前CS:IP开始执行。A:>DEBUG-A08F1:0100MOVDL,03H08F1:0102MOVAH,02H08F1:0104INT21H08F1:0106INT20H08F1:0108-TAX=0000BX=0000CX=0000DX=0000SP=FFEEBP=0000SI=0000DI=0000DS=08F1ES=08F1SS=08F1CS=08F11P=0105NVUPEIPLNZPOCY09F1:0102B402MOVAH,02若指定起始地址,则T命令会从指定的地址开始跟踪,我们还可以指定跟踪一次所运行指令的个数,用Ctrl+S暂停屏幕的显示,以便观察。-t=10010;由CS:100开始跟踪10条指令U[起始地址]或者[地址范围]功能:将内存中的内容转换为汇编语句。说明:反汇编的字节数取决与用户的系统显示形式,以及在U命令中使用的可选项。(1)从指定地址开始编译,反汇编32个字节-U[地址]←从CS:100开始,其反汇编32个字节如果地址被省略,则从一个U命令的后一条指令的下一条单元开始汇编32个字节。(2)对指定的存贮范围进行反汇编-u起始地址终止地址(L长度)例:-U10010908F1:0100CD20INT2008F1:0102FF9F009ACALLFA12[BX+9A00]08F1:0106F0LOCK08F1:0107FE1DCALLFAR[DI]08F1:0109F0LOCK说明:如指定了范围则整个范围全都会被反编译W[地址][盘符:][起始扇区][扇区数]写盘命令功能:将修改过的数据写到磁盘上。说明:可以将指定内存地址开始的数据写在磁盘上,可以在没有指定参数,或指定地址参数的情况下,将调试文件写在磁盘上。在运行W时需设置文件的大小CX或BX寄存器(1)把数据写入磁盘的指定扇区-W起始地址驱动器名起始扇区扇区数(2)把数据写入指定文件中-W起始地址例A:>DEBUG-A08f1:0100..写入程序段08F1:012A.-RCXCX:0000:2A←写入字节数,即为程序结尾地址减起始地址←设置文件名,需后缀为com-wWring002Abytes-qA:>TAN←即可执行此程序"XD"命令:释放EMS内存例:-XD0001handle0001dealloca←释放了利用XD释放后可再分配"XM"命令;把扩充内存上的内存页区映射到主内存区格式:XMRAM长页码主内存页码句柄例:-XM320001←把0001号句柄的第3号逻辑页区映射到2号真实页区Logicalpage03mappedtophysicalpage02"XS"命令:显示当前EMS使用情况。格式-XS实用debug命令集锦1.非物理0磁道坏软盘的修复此种损坏从软盘盘面上来看并没有明显的划伤和霉变。一般可以恢复其数据,也可是软盘重新在利用。处理方法如下:ⅰ.进入debugⅱ.取一张区没有损坏的好磁盘,插入软驱-l100001ⅲ.插入损坏的磁盘到软驱-w100001-q注意:好盘与坏盘容量必须相同2.物理0磁道坏软盘中的数据读取对于0磁道损坏的磁盘,一般来说是应该抛弃了,当你也不妨试一试已下方法:磁化处理:用较强的磁铁在靠近坏磁盘的表面处反复移动,切不可碰到磁盘介质,以免划伤表面,然后在试试格式化。软盘换面:小心的将磁盘打开,坚磁片与金属芯片分开,方面后再按原来的方法粘在一起即可,在重新格式化。diskfix:对于diskfix想必大家都用的比较多了,里面的磁盘修复功能很好用的。能修复大多数磁盘表面错误。

debug是什么意思

debug是一种作程序,我们现在就来了解一下它的用法是什么?下面是我给大家整理的debug是什么意思,供大家参阅!

debug是什么意思

消除故障

DEBUG是一种计算机程序。马克2号(Harvard Mark II)编制程序的葛丽丝·霍波(Grace Hopper)是一位美国准将及计算机科学家,同时也是世界早的一批程序设计师之一。有一天,她在调试设备时出现故障,拆开继电器后,发现有只飞蛾被夹扁在触点中间,从而“卡”住了机器的运行。于是,霍波诙谐的把程序故障统称为“臭虫(BUG)”,把排除程序故障叫DEBUG,而这奇怪的“称呼”,竟成为后来计算机领域的专业行话。如DOS系统中的调试程序,程序名称就叫DEBUG。DEBUG在windows系统中也是极其重要的编译作。

DEBUG原则

你改错了文件

你改对了文件,但却是在别人的机器上

你改对了文件,但忘了保存

你改对了文件,但忘了重新编译

你认为你把那个东西开启了,但实际上你把它关闭了

你认为你把那个东西关闭了,但实际上你把它开启了

会议中,你应该用心听。

你运行了错误的版本

你运行了正确的版本,但却是在别人的机器上

你改正了问题,但忘了提交

你改正了问题,也提交了,但忘了 push 到版本库中

你改正了问题,也提交了,也 push 了。然而,很多用户的工作都依赖于之前有问题的版本,于是你必须回滚。

DEBUG程序命令

网络debug命令

获得路由器中交换的报文和帧的细节信息

用于调试信息

debugging命令使用注意事项

不使用debug命令正常的网络运行

在网络使用的低峰期使用

不要轻易使用类似debugging all之类的命令

使用debugging命令后,应立即以“undo debugging”命令终止debugging命令的执行。

Debugger

"Debugger"这个词按它的英文字面意思来讲是这样一种“装置”(-er),这种装置可以“消除”(De-)“系统中的缺陷”(bug)。然而事实上,迄今为止我们经常使用到的"Debugger"只是用来帮助我们进行Debug的工具,"Debugger"本身不能自动完成"Debug"。我们可以回想一下我们是如何进行Debug的,在进行Debug的过程中,我们通过Debugger来完成以下工作:

(1)监视“Debug对象”的状态;

(2)控制“Debug对象”的运行;

这些工作可以为“发现Debug对象中存在的问题”以及“对解决问题方案的检验”提供有用的信息。

工作有时只需要由软件就可以完成,有时不仅需要软件支持,还需要硬件的支持。

Debugger除了被用来Debug,还被用来帮助我们理解“Debug的对象”内部结构,因为我们用到的Debugger能够完成对“Debug对象”的工作,在的过程中可以获取“Debug对象”动态特征的信息,这对我们理解其结构是非常有用的。

关于更详细的介绍和研究可以参考国人原创的《软件调试》,这是一本非常全面且深入的“软件调试”红皮书。

WinDbg是微软发布的一款相当的源码级(source-ll)调试工具,可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件。

DEBUG 2

Debug

启动 Debug,它是可用于测试和调试 MS-DOS可执行文件的程序。

Debug [[drive:][path] filename [parameters]]

参数

[drive:][path] filename

指定要测试的可执行文件的位置和名称。

parameters

指定要测试的可执行文件所需要的任何命令行信息。

说明:使用 Debug 命令但不指定要测试的文件

如果使用没有位置和文件名的 Debug 命令,然后键入所有的 Debug 命令以响应 Debug 提示符,连字符(-)。

debug是什么意思 解析程序员必备技能-Debug?

debug是一个计算机术语,是指在软件开发过程中,发现和修复程序中的错误问题。在计算机编程中,debug是程序员必备的技能之一。

debug是一个计算机术语,是指在软件开发过程中,发现和修复程序中的错误问题。在计算机编程中,debug是程序员必备的技能之一。

在debug过程中,程序员需要注意一些常见的错误类型,如语法错误、逻辑错误、运行时错误等。程序员需要找到错误的根源,并进行修复,以确保程序的正常运行。

debug的目的是找出程序的错误,然后进行修复。当程序出现错误时,debug工具可以帮助程序员快速地定位问题。在debug过程中,程序员会使用一些工具,如断点调试、日志记录、堆栈等,以便找出程序的错误。

总之,debug是一个非常重要的程序员技能。只有掌握了debug技能,程序员才能快速地定位并修复程序中的错误,从而保证程序的正常运行。

debug的目的是找出程序的错误,然后进行修复。当程序出现错误时,debug工具可以帮助程序员快速地定位问题。在debug过程中,程序员会使用一些工具,如断点调试、日志记录、堆栈等,以便找出程序的错误。

请问各位命令debug是什么意思?

Debug

英文词,程序查错的意思。bug原意是小虫,例如跳蚤,虱子,苍蝇等,Debug就是找小虫,消灭它。

Debug有很多方法。

自己手工查错,例如加入许多打印语句,进行执行线路跟踪,找到出错地点,设输入变量值的范围变化,看哪里溢出。也叫Debug。

VC++里有VC++的Debug,执行线路跟踪,变量变化跟踪,内存变化跟踪。在Visual

Studio控制下,Build->Start

Debug下有各种查错方法可用。

DOS里有Debug,

在DOS窗打命令Debug启动Debug,拍入问号,你可以得到详细的Debug用法:

Runs

Debug,

aprogram

testing

and

editing

tool.

DEBUG

[[drive:][path]filename

[testfile-parameters]]

[drive:][path]filename

Specifies

the

file

you

want

to

test.

testfile-parameters

Specifies

command-line

rmation

required

by

the

file

you

want

to

test.

assemble

A[address]

compare

Crange

address

dump

D[range]

enter

Eaddress

[list]

fill

Frange

list

go

G[=address]

[addresses]

hex

Hvalue1

value2

input

Iport

load

L[address]

[drive]

[firstsector]

[number]

move

Mrange

address

name

N[pathname]

[arglist]

output

Oport

byte

proceed

P[=address]

[number]

quit

Qregister

R[register]

search

Srange

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

不同机种有不同的debug.

“详细的解释”要看是那个Debug软件,自己查书或Debug自带的帮助文件或说明。

是调试解决bug的命令。具体问题自然解决方法不同,自然输入的命令不同。maxdos中的debug是为maxdos提供的有力的侦错,跟踪程序运行,检查系统数据的工具程序,它是在字符界面下以单字符命令方式工作。要很好地使用它必须具备一定的汇编程序设计和硬件基本知识的能力,当然,它为汇编语言程序员提供了有效的调试手段,它的功能包括以下几个方面。

1.

直接输入、更改、跟踪、运行汇编程序

2.

观察作系统的内容;

3.

查看rom

bios的内容;

4.

观察更改ram内部的设置值;

5.

以扇区或文件的方式读写软盘数据。

在debug中地址用段地址与段内地址来表示,而段地址可以明确地指出来,也可以用一个段指示器(段寄存器)来代表,用段寄存器表示时,其段地址就是此寄存器的内含值:

如:用段地址和段内地址表示foff:0100

用段寄存器和段内地址表示csf:0100←cs指向f000

下面列出了常用命令用法。

-a

地址

从指定地址开始编写小汇编程序,按两个回车键结束编辑

-u

地址

从指定地址开始反汇编32字节的机器指令,缺省地址则从上一u命令继续

-d

始址

终址

以16进制/asc字符对照方式显示指定内存范围的数据,每行显示10h个字节

-e

地址

值表

用给出的值表(空格分隔)替换指定地址开始的内存单元,例:-e

100

'v'

1f

'hello'

-n

文件名

为后续的l/w命令约定所作的文件名

-l

地址

将n命令所指定文件的内容读入到指定内存位置。另,逻辑卷扇区直接读:-l

地址

逻卷号

起始逻扇号

扇数

-w

地址

将bx-cx个字节的内存数据写入n命令指定的文件中。另,逻辑卷扇区直接写:-w

地址

逻卷号

起始逻扇号

扇数

-r

寄存器名

显示并允许修改指定寄存器的值

-g=始址

终址

执行指定内存中的机器指令程序

-t=地址

单步执行机器指令,缺省地址则从上一t命令继续。另,继续跟踪m条指令:-t

m读取c:卷的扇区,并保存到boot.1文件中,并简单分析程序的前面几条指令:

-l

1000

21

-n

boot.1

-r

bx

;输入0000

-r

cx

;输入0200

-w

1000

-u

1000

读取个硬盘上的主扇区,并保存到mb.1文件中,在屏幕上显示硬盘分区表数据:

-a

100

版权声明:本文发布于龙途教育 图片、内容均来源于互联网 如有侵权联系836084111@qq.com删除
随机内容