Debug常用命令

DEBUG常用命令 DEBUG是DOS时代遗留下来的调试工具,它为汇编语言程序员提供了有效的调试手段,可以用来跟踪程序运行、检查系统数据等。 在DEBUG中内存地址用段地址与段内偏移来表示,段地址可以明确地指出来,也可以用一个段指示器(段寄存器)来代表,用段寄存器表示时,其段地址就是此寄存器的内含值。例如,用段地址和段内偏移表示F0FF:0100, 用段寄存器和段内偏移表示CS:0100。 在DOS提示符下可键入以下命令运行DEBUG程序:

DEBUG[d:][path][文件名][参数列表] 其中文件名是被调试文件的名字,其后缀需为EXE或COM文件,d:和path为被调用文件所在的盘符和路径,参数列表是运行被调试文件所需的参数,方括号“[]”中的选项是可选项,回车后出现“-”提示符,就可以使用所需的DEBUG命令。

1. ?命令 在“-”之后键入“?”回车即可出现DEBUG所有命令的简要说明。 2. A命令 将汇编语言源程序翻译成机器码,并存入内存。格式如下: -A[起始地址] 如果A后无地址,则DEBUG会将一次A命令结束时的地址定为起始地址,进入DEBUG后第一次执行A命令的起始地址为CS:100。例如:

C:\>DEBUG -a 0100 08F1:0100 MOV CH,09 08F1:0102 MOV DX,109 08F1:0105 INT 21H 08F1:0107 INT 21H 08F1:0109 db 'May I help you $' 08F1:0115 ←离开a状态 -g ←运行 May I help you ←运行结果 Program terminated normally ←表示运行正常 3. C命令 比较两段内存区的内容并列出相异之处,格式如下: -C第一段起始地址 第一段终止地址 第二段起始地址 例如: -C 4000:0 3F 100 就是用来比较4000:0000-4000:003F与DS:0100-DS:013F之间的内容,其显示格式如下: 内存地址1 内含值1 内含值2 内存地址2 例如,比较4000:0 3F 100内容的差异: -C 4000:0 3F 100 4000:0000 64 43 08F1:0100 4000:0001 3E 69 08F1:0101 4000:0002 78 FF 08F1:0102

如果要比较的范围在DS内,则段地址不必指出。例如: -C 0 4 100 C命令的另一种格式如下: C地址1 L长度 地址2 例如: -C 0000:0 L4 0 ;由0000:0与DS:0开始比较

它同-C 0000:0 3 0 命令等价,它们都比较4个字节。显示结果如下: 0000:0000 8A C0 08F1:0000 0000:0001 10 20 08F1:0001 0000:0002 1C 00 08F1:0002 0000:0003 49 7F 08F1:0003

4. D命令 将指定内存区的内容列出,格式如下: D[范围] D命令可以列出指定内存内容,并分别以十六进制及ASCII 字符显示出来。使用D命令时,其列出内存内容的第8到第9之间有一个减号“-”连接,以方便观察。例如:

-d 10 4f 即为显示DS:10-DS:4F的内存内容。 在D命令中如不指出段地址,则其默认为DS段。如指明段地址,则从指明的段地址列出指定的范围。例如:

-d ffff:00 0f 我们也可以指定长度来列出所需要内存内容,例如: -d 100 L20 即为显示由DS:100-DS:11F的内容,共20H个字节。 若没有指定范围,则会从上一个D命令所显示的最后的地址接者显示128个字节。

5. E命令 修改内存内容的命令,格式如下: E起始地址[数据行] (1) 用给定内容代替指定范围的单元内容 -E 地址 内容表 例如: -E 100 41 42 43 44 48 47 46 45 -D 100 L08 08F1:0100 41 42 43 44 48 47 46 45 ABCDHGFE…

(2) 逐个修改内存内容 例如:

-E 100 08F1:0100 76 42 ;42是操作员键入 此命令是将地址为100的内存内容由原来的76修改为42,用D命令可察看结果。 6. F命令 将数据填入指定的范围,格式如下: F范围 数据行 F命令将数据行填入F所设定的范围内,如果数据未能一次填范围,则其会重复地填入,直至填满。例如:

-f 100 120 61 62 63 64 -d 100 11f 08F1:0100 61 62 63 64 61 62 63 64 -61 62 63 64 61 62 63 abcdabcdabcdabcd 08F1:0110 61 62 63 64 61 62 63 64 -61 62 63 64 61 62 63 abcdabcdabcdabcd

如果数据行超出指定的范围,则填不下的数值会被忽略。例如: -f 100 l07 41 43 43 44 45 46 47 48 49 4A 4B 4C 4D -d 100,l0f 08F1:0100 41 42 43 44 45 46 47 64 -61 62 63 64 61 62 63 64 ABCDEFGdabcdabcd

由上例可看出,超出范围的数据被忽略。 另外,F和E命令都可填入字符串。例如:

-F 100 105 “MSDOS” -d 100 l0f 08F1:0100 4D 53 44 4F 53 46 47 64 -61 62 63 64 61 62 63 64 MS DOS FGabcd abcd

7. G命令 运行机器码程序,格式如下: -G[=起始地址][中断点1]…… 例如: debug foo.exe -u:反编译成汇编语言程码 ......... . . -g 100←指定中断点 Program terminated normally:

另外,我们在DEBUG 下可运行一个文件.EXE。例如: debug foo.exe -g

即可开始运行此程序,和在DOS下完全一样。 8. H命令 以十六进制计算两个数的和与差。格式如下: H 数值1 数值2 例如: -h 4538 5623 9B5B EF15

9. I命令 显示I/O端口数据。格式如下: I I/O端口地址 例如: -i 70 F9 ;显示70端口的内容为F9

I命令可由80X86的64K个I/O端口取数据。 10. L命令 将文件或磁盘扇区的数据装入内存。

(1) 格式1

L装入地址 驱动器号 起始扇区 扇区数 这种方式可把磁盘上指定扇区范围的内容装入到存储器从指定地址开始的区域中。例如:

-L 100 0 0 1 ;将A盘的0扇区装至CS:100上 -d 100 10f 08F1:0100 EB 3C 90 3C 53 44 4F 53 -36 2E 32 32 02 01 01 00 .L.MSDOS 6.22……

L 命令中所用的磁盘代码A=0,B=1,C=2,.....。 (2) 格式2 L装入地址 这种方式可把指定文件装入内存,装入的文件可在进入DEBUG时指定,也可用N命令设定。例如:

DEBUG -n foo.exe -L 100

11. M命令 移动内存中数据。格式如下:

M范围 目的地址

M命令将指定地址范围的数据移到目的地址上,其实M命令做的不是移动而是拷贝的动作,经移动的源地址和目的地址内容一样。例如:

-e 100 41 42 43 44 45 -d 100 l0f 08F1:0100 41 42 43 44 45 62 63 64-61 62 63 64 61 62 63 64 ABCDEBCDABCDABCD -m 100 104 110 -d 110 L1F 08F0:0100 41 42 43 44 45 0A 21 19-20 01 01 20 07 96 87 9F ABCDE.......

12. N命令 命名命令。格式如下:

N 路径名1 [路径名2]

我们在运行程序调试时,在启动DEBUG 时在其后加可执行程序文件名以及该程序的参数或运行文件,但当我们调试一段时间后,可能装入其它文件来测试,这时我们可利用N命令来设置而无需退出DEBUG。例如:

DEBUG foo.exe -n test.dat

当程序调试一段时间后,若要把foo.exe装入test.dat则用-n test.dat即可。

13. O命令 将1个字节的数据送往I/O端口地址。格式如下: O输出地址数据 例如,可用如下方式取消开机口令:

-O 70 10 -O 71 00

14.P命令 运行指定地址上的程序,可以指定指令个数。格式如下: P[=地址] [指令个数] P命令和T一样是用来跟踪程序运行过程的命令,我们可以在P命令中指定程序运行的起始地址,指令个数,如未指定则从CS:IP所指定的地址开始一次运行一条指令。 P与T命令的差别在于P命令把CALL/INT当成一条指令来执行,简化了跟踪过程。此外,P命令只能运行RAM内存中的程序,而T命令则可运行RAM和ROM里的程序。

15. R命令 显示及更改寄存器值。格式如下: R[寄存器名] 在R指令后加入寄存器名,则DEBUG会单独显示此寄存器名和寄存器的值并等待输入新值,若不想改变则回车即可。例如:

-r bx bx 0050 :51

合集下载

sap debug的方式

sap debug的方式

sap debug的方式SAP Debug的方式SAP Debug是一种常用的调试工具,它可以帮助开发人员在SAP 系统中查找和解决程序错误。

本文将介绍SAP Debug的基本概念、使用方法以及一些常见的调试技巧。

在SAP系统中,调试是一种用于定位和修复程序错误的重要技术。

当我们遇到一个程序出现异常或不符合预期时,通过使用SAP Debug可以进入程序的执行过程中,逐行查看程序运行的状态和变量的取值,从而帮助我们找到问题所在。

我们需要了解如何启用SAP Debug模式。

在SAP系统中,我们可以通过在事务码(Transaction Code)前添加“/h”或“/n”来启用Debug模式。

例如,如果我们要调试事务码“ME21N”,我们可以在SAP Easy Access界面的命令行输入“/hME21N”或“/nME21N”来启动Debug模式。

一旦进入Debug模式,我们可以使用一系列的调试命令来控制程序的执行。

其中,最常用的命令之一是“断点”(Breakpoint)。

通过在程序中设置断点,我们可以在指定的代码行上暂停程序的执行,以便我们能够逐行分析程序的执行过程。

在SAP系统中,我们可以通过单击程序行号的左侧或使用“/h”和“/n”命令来设置断点。

当程序执行到断点时,它将暂停,并显示当前变量的取值和其他相关信息。

SAP Debug还提供了一些其他有用的功能,例如“监视点”(Watchpoint)和“变量显示”(Variable Display)。

通过设置监视点,我们可以监视特定变量的值,并在其发生变化时暂停程序的执行。

变量显示功能可以帮助我们查看程序中的变量和它们的取值,以便更好地理解程序的执行过程。

在进行调试时,我们还可以使用一些技巧来提高调试的效率。

例如,我们可以使用“单步执行”(Step Over)命令来逐行执行程序,而不必进入每个子程序中。

此外,我们还可以使用“调用堆栈”(Call Stack)功能来查看程序的调用关系,从而更好地理解程序的执行流程。

汇编--BinarySearch(二分查找)

汇编--BinarySearch(二分查找)

一、实验目的1. 熟悉汇编语言程序设计的开发环境、格式以及汇编过程;2. 熟练掌握Debug命令的U命令、D命令、R命令、G命令、T命令、Q命令等;3. 掌握分支程序的设计方法。

二、实验原理及基本技术路线图(方框原理图)1. Debug常用命令简介:D命令:格式:D [range]或D [address],显示部分存储区的内容;U命令:格式:U [address],将内存某一区的机器码,用此命令反汇编为源程序;R命令:格式:R[Register name],显示和修改各寄存器的内容;G命令:格式:G[=address][address[address..],执行需运行的程序,并对调试的程序进行断点测试跟踪;T命令:格式:T[=address][Value],执行以CS:IP 中指定开始的一个或几个指令,并显示出执行每条指令后所有寄存器的内容;Q命令:格式:Q,退出DEBUG状态,说明:Q命令不保留正在内存中运行的文件,若保留需用"W" 命令,DEBUG返回到命令处理程序,然后显示出正常的命令提示。

2. 折半查找流程图具有分支结构的程序叫做分支程序。

设计分支程序时最好先用流程图画出程序流向,这样思路清晰,也利于编码实现,实现分支时要用到转移指令。

以下为折半查找的流程图:三、所用仪器、材料(设备名称、型号、规格等)1. 操作系统平台:Windows Server 20032. 汇编环境:Microsoft MASM 5.03. 文本编辑器:记事本四、实验方法、步骤1. 将MASM5.0的文件置于C:\assembly\目录下;2. 将masm.exe和link.exe所在目录(C:\assembly\MASM5)添加到Path环境变量中;3. 用记事本在C:\assembly\下新建一个BS.asm文件,打开BS.asm,输入汇编程序代码;4. 运行一个命令行窗口,将当前目录切换到C:\assembly\,然后输入命令:masm BS.asm [Enter],来汇编程序,根据汇编结果查看程序代码是否有语法错误,如有,则更正保存后重新汇编,直至没有错误为止,此时会生成BS.obj文件;5. 输入命令:link BS.obj [Enter],观察输出结果,如果没有错误,则生成BS.exe文件;6. 输入命令:debug BS.exe [Enter],调试程序,并记录运行过程;7. 完成实验报告。

DEBUG代码

DEBUG代码
0E 测试CMOS停机字节。 CMOS停开寄存器读/写测试;将计算CMOS检查总和。 初始化输入/输出端口地址。
0F 测试扩展的CMOS。 已计算CMOS检查总和写入诊断字节;CMOS开始初始准备。 .
10 测试DMA通道0。 CMOS已作初始准备,CMOS状态寄存器即将为日期和时间作初始准备。 第一个64K RAM第0位故障。
03 清除8042键盘控制器,发出TESTKBRD命令(AAH) 通电延迟已完成。 ROM BIOS检查部件正在进行或失灵。
04 使8042键盘控制器复位,核实TESTKBRD。 键盘控制器软复位/通电测试。 可编程间隔计时器的测试正在进行或失灵。
05 如果不断重复制造测试1至5,可获得8042控制状态。 已确定软复位/通电;即将启动ROM。 DMA初如准备正在进行或者失灵。
17 调准视频输入/输出工作,若装有视频BIOS则启用。 第1通道计时器测试结束;8254第0通道计时器即将完成测试。 第一个64DK RAM第7位故障。
18 测试视频存储器,如果安装选用的视频BIOS通过,由可绕过。 第0通道计时器测试结束;即将开始更新存储器。 第一个64DK RAM第8位故障。
28 确定超高速缓冲存储器的控制或者特别的8042键盘控制器。 完成中断矢量之后的初始准备;即将调定单色方式。 CMOS电源故障/检查总和计算正在进行。
29 . 已调定单色方式,即将调定彩色方式。 CMOS配置有效性的检查正在进行。
2A 使键盘控制器作初始准备。 已调定彩色方式,即将进行ROM测试前的触发奇偶性。 置空64K基本存。
06 使电路片作初始准备,停用视频、奇偶性、DMA电路片,以及清除DMA电路片,所有页面寄存器和CMOS停机字节。 已启动ROM计算ROM BIOS检查总和,以及检查键盘缓冲器是否清除。 DMA初始页面寄存器读/写测试正在进行或失灵。

debug命令的使用

debug命令的使用

1.打开Windows命令窗口在Windows 95/98的环境中,打开命令窗口的步骤为:点击“开始”→“运行”,输入“command”命令;在WindowsXP及WIN7的环境中,打开命令窗口的步骤为:点击“开始”→“运行”,输入“cmd”命令;2.启动DEBUG在命令窗口中启动DEBUG,启动命令一般为:DEBUG [文件名] [参数表]。

其中:文件名指定被调试的文件,其包括名和后缀,参数表是被调试文件运行时所需要的参数。

被调试的文件可以是系统中的任何文件,但通常它们的后缀为.EXE或.COM。

当DEBUG启动成功后,将显示连接符“-”,这时,可输入各种DEBUG命令。

DEBUG中所有命令及其含义如DEBUG各命令功能说明表所示。

关于使用命令的几点说明:在提示符“-”下才能输入命令,在按“回车”键后,该命令才开始执行命令是单个字母,命令和参数的大小写可混合输入可用F1、F2、F3、Ins、Del、左移键、右移键等编辑键来编辑本行命令当命令出现语法错误时,将在出错位置显示“^ Error”可用Ctrl+C或Ctrl+Break来终止当前命令的执行,还可用Ctrl+S或Ctrl+Num Lock来暂停屏幕显示(当连续不断地显示信息时)以下通过实现十九个示例来熟悉DEBUG的命令集和基本的汇编指令。

R命令的使用R命令作用:观看和修改寄存器的值。

在提示符“-”下输入以下命令:R。

DEBUG将会显示出当前所有寄存器和标志位的状态。

接下来再输入命令RCX。

在提示符“:”后输入100。

该命令的作用是将寄存器CX的值设置为100(注意:DEBUG使用的是十六进制,这里的100相当于十进制的256。

)最后再执行R命令,观看修改后的寄存器值。

H命令的使用H命令作用:计算两个十六进制数的和与差。

在提示符“-”下输入以下命令:H 10 1。

观看命令执行结果。

运行结果的前一个数是计算出来的和,后一个数是计算出来的差。

实验一MASMForWindows的使用及顺序程序设

实验一MASMForWindows的使用及顺序程序设

实验一 MASM For Windows 的使用及顺序程序设计一、实验目的1、熟悉在PC机上建立、汇编、连接、调试和运行8086汇编语言程序的过程。

2、熟悉masm for windows调试环境及DEBUG常用命令的使用二、实验内容1.DEBUG常用命令(U、R、D、E、F、T、G、Q)的操作使用2.编程实现两个16位无符号数的加、减、乘、除运算。

有两个两字节无符号数分别放在存储单元A、B起始的缓冲器中,求其和,结果放在A起始的缓冲区并在屏幕上显示。

相加若有进位不存入存储单元。

三、实验设备PC机一台、masm for windows 汇编语言集成环境四、实验准备1) 分析题目,将程序中的原始数据和最终结果的存取方法确定好。

2) 画出流程图。

3) 写出源程序。

4) 对程序中的结果进行分析,并准备好上机调试与用汇编程序及汇编调试的过程。

五、实验步骤1) 输入源程序。

2) 汇编、连接程序,生成 .EXE文件,执行文件,检查结果。

六、学生实验报告的要求1) 列出源程序,说明程序的基本结构,包括程序中各部分的功能。

2) 说明程序中各部分所用的算法。

3) 说明主要符号和所用到寄存器的功能。

4) 上机调试过程中遇到的问题是如何解决的。

5) 对调试源程序的结果进行分析。

4) 说明标志位CF、SF和OF的意义。

DEBUG的常用命令1、R 显示或修改寄存器的内容命令格式:-R2、 D 显示存储单元的内容命令格式:-D[地址1, 地址2]3、E修改存储单元的内容命令格式:-E[地址1, 地址2]4、U反汇编命令格式:-U[地址1, 地址2]5、T单步执行命令格式:-T6、G连续执行命令格式:-G[=起始地址, 结束地址]A小汇编命令格式:-A7、Q退出DEBUG,返回DOS实验一源程序 EXAM1-2 .ASMDATA SEGMENTA DB 34H,18H,2 DUP(0),’$’B DB 56H,83HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX,DATAMOV DS,AXMOV AL,AMOV BL,BADD AL,BLMOV AH,A+1MOV BH, B+1ADC AH, BHMOV A, ALMOV A+1, AH ;A加上B,并存入A单元中MOV CX, 0004H ;设置循环次数4次MOV DI, OFFSET A ;DI指向A的首地址MOV DX, [ DI] ;A单元中的值送入DX寄存器中ADD DI,03NEXT: MOV AX, DXAND AX,000FHCMP AL,0AHJB QQQ ;跟A比较,若小,则跳到QQQADD AL, 07H ;若比A大,加上07HQQQ: ADD AL, 30H ;将A单元里的数据转换成ASCII码 MOV [DI], ALDEC DIPUSH CXMOV CL, 04SHR DX, CLPOP CXLOOP NEXTMOV DX, OFFSET A ;DX指向A的首地址MOV AH, 09H ;依次在屏幕上输出INT 21HMOV AH,4CHINT 21HCODE ENDSEND START执行程序EXAM1-2·EXE,屏幕上显示结果:9B8A。

1DEBUG命令的功能及使用

1DEBUG命令的功能及使用

实验一DEBUG命令的功能及使用一实验目的掌握汇编语言基本运行环境和熟悉DEBUG调试程序的命令。

包括:学习使用指令,掌握常用的指令功能和简单程序设计;掌握DEBUG调试程序的命令,熟悉程序输入、存储器和CPU寄存器及标志位的检查方法,单步、断点、连续等运行程序的调试方法。

二实验内容DEBUG的主要命令功能与格式1.汇编命令A格式:A [[<段寄存器名>/<段地址>:] <段内偏移>]上式等价于:(1)A <段寄存器名>:<段内偏移>(2)A <段地址>:<段内偏移>(3)A <段内偏移>(4)A功能:键入该命令后显示段地址和段内偏移并等待用户从键盘逐条键入汇编命令,逐条汇编成代码指令,顺序存放到段地址和段内偏移所指定的内存区域,直到显示下一地址时用户直接键入回车键返回到提示符“-”。

注:其中(1)用指定段寄存器的内容作段地址,(3)用CS的内容作段地址,(4)以CS:100作地址。

以后命令中提及的各种‘地址’形式,均指(1)、(2)、(3)中A后的地址形式。

2.显示内存命令D格式:D [<地址>/<范围>]上式等价于:(1)D <地址>(2)D <范围>(3)D功能:以两种形式显示指定范围的内存内容。

一种形式为十六进制内容,一种形式为以相应字节的内容作为ASCII码的字符,对不可见字符以‘.’代替。

注:其中(1)以CS为段寄存器。

(3)显示CS:100起始的一片内容。

3.修改内存命令E格式:E <地址> [<单元内容表>]上式等价于:(1)E <地址>(2)E <地址> <单元内容表>其中<单元内容表>是以逗号分隔的十六进制数,或用’或”括起来的字符串,或者是二者的组合。

功能:(1)不断显示地址,可连续键入修改内容,直至新地址出现后键入回车Enter 为止。

DEBUG使用方法简介

2.3 DEBUG使用方法简介:DEBUG是DOS命令,必须在DOS环境下运行。

由于目前都使用WINDOWS操作系统,应设法进入实地址模式的DOS环境,才能可靠地运行DEBUG。

一般可用DOS启动盘启动系统,或在WINDOWS-98系统退出时选择“切换到MSDOS”操作,进入到实地址模式的DOS环境。

由于DEBUG是DOS外部命令,因此,须把DEBUG.EXE文件拷贝到当前目录下来运行DEBUG,DOS启动盘中应事先拷贝有DEBUG.EXE文件,在WINDOWS98系统中,“C:\WINDOWS\COMMAND\”目录下有DEBUG.EXE文件。

后面的操作,假设DEBUG.EXE文件都已事先拷贝到当前目录下。

在WINDOWS操作系统中(包括WINDOWS98、2K、XP等),系统提供了V86模式的“命令提示符”窗口,在此窗口中也能运行DEBUG,但DEBUG的某些功能会受到WINDOWS系统的限制。

1.启动与退出DEBUG:启动DEBUG,在DOS提示符下输入:DEBUG[回车]屏幕显示“-”,表示已启动了DEBUG。

“-”是DEBUG子命令等待状态,后面所有的DEBUG操作(包括运行调试自编的汇编语言程序)都是在此“-”提示符下所进行的DEBUG 子命令执行。

退出DEBUG,在“-”提示符下输入:Q[回车]屏幕显示DOS命令提示符:C:\> 或A:\> 。

2.进入与退出输入汇编指令:在“-”提示符下输入:A [偏移地址] [回车]屏幕显示“<段地址>:<偏移地址> |”,此处将等待你输入汇编语言程序或实验指令。

当一条指令输入完毕[回车]后,又将自动出现下一对“<段地址>:<偏移地址> |”等待你输入下条指令,如此重复,将帮助你把整段汇编语言程序输入完毕。

注意:如果输入汇编指令时手误,屏幕上将当场提示错误“ERROE”,自动地址不进步,还在原地址上等待你重新输入正确的汇编指令。

iOS之LLDB常用调试命令

iOS之LLDB常⽤调试命令LLDB是个开源的内置于XCode的调试⼯具,这⾥来理⼀理常⽤⽤法。

lldb对于命令的简称,是头部匹配⽅式,只要不混淆,你可以随意简称某个命令。

结果为在xcode下验证所得,可能与其它平台有所误差。

1 打印值、修改值、调⽤⽅法1.1 p、po 打印值打印相关的命令有:p、po。

p 和 po 的区别在于使⽤ po 只会输出对应的值,⽽ p 则会返回值的类型以及命令结果的引⽤名。

(lldb) p width(CGFloat) $10 = 70(lldb) po width70(lldb) p endTime(__NSCFString *) $14 = 0x0000608000437660 @"08-11 11:43"(lldb) po endTime08-11 11:43对⽐结果:po:输出值p:输出值+值类型+引⽤名+内存地址(xcode中有内存地址,其它平台不确定)除此之外,p还隐藏了⼀个有意思的功能,常量的进制转换://默认打印为10进制(lldb) p 100(int) $8 = 100//转16进制(lldb) p/x 100(int) $9 = 0x00000064//转8进制(lldb) p/o 100(int) $10 = 0144//转⼆进制(lldb) p/t 100(int) $2 = 0b00000000000000000000000001100100//字符转10进制数字(lldb) p/d 'A'(char) $7 = 65//10进制数字转字符(lldb) p/c 66(int) $10 = B\0\0\01.2 expression 修改参数值感觉exp命令是调试过程中最有价值有命令了,它可以打印值、修改值。

//expression打印值(lldb) expression width(CGFloat) $5 = 67//expression修改值(lldb) expression width = 80(CGFloat) $6 = 80//打印修改后结果(lldb) p width(CGFloat) $7 = 80(lldb)expression:同样可以输出值+值类型+引⽤名,但其⼀般⽤于修改。

DEBUG命令的功能及使用

DEBUG命令的功能及使用功能:1.单步执行:DEBUG命令可以逐条执行程序的指令,并在每个指令被执行后停止程序的执行。

这使得开发人员能够逐步查看程序的执行过程,以便找到潜在的错误和问题。

2.查看和修改内存:DEBUG命令允许开发人员查看程序运行时的内存状态,并且提供了一些命令来读取和修改内存中的数据。

这对于调试内存泄漏、内存溢出和指针问题非常有用。

3.断点:DEBUG命令可以在程序的特定位置设置断点,一旦程序执行到这个位置,就会自动停止执行。

这使得开发人员可以在关键点查看程序的状态,以便分析问题。

4.寄存器查看和修改:DEBUG命令允许开发人员查看和修改程序运行时的寄存器值。

这对于理解程序如何处理数据以及跟踪特定变量的值非常有用。

5. 注册表和文件系统访问:DEBUG命令可以访问Windows注册表和文件系统,以检查和修改系统的配置和状态。

这对于调试与注册表和文件系统相关的问题非常有用。

使用:1.运行DEBUG命令:在命令行窗口中输入"DEBUG"命令,然后按下回车键即可运行DEBUG命令。

DEBUG命令会显示一个提示符,表示它已经准备好接受命令。

2.设置断点:使用"t"命令可以在程序中设置断点。

例如,要在程序的第10行设置一个断点,可以输入"t10"命令。

3.单步执行:使用"p"命令可以逐步执行程序的指令。

每次执行一条指令后,DEBUG命令会显示当前指令的汇编代码和程序计数器的值,并等待用户输入下一个命令。

4.查看内存:使用"d"命令可以查看指定内存地址的内容。

例如,输入"d1000"命令可以查看地址为1000的内存单元的内容。

5.修改内存:使用"e"命令可以修改指定内存地址的内容。

例如,输入"e100090"命令可以将地址为1000的内存单元的内容修改为90。

常用DOS命令和DEBUG命令-15页精选文档

DOS常用命令1.3.1、目录操作类命令:1.3.1.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子目录)1.3.1.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:\>1.3.1.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\USER1.3.1.4、DIR——显示磁盘目录命令1.功能:显示磁盘目录的内容。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档