


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、DEBUG 程序的使用一、在 DOS 的提示符下,可如下键入 Debug 启动调试程序: DEBUG 路径 文件名 参数 1 参数 2Debug 后可以不带文件名,仅运行 Debug 程序;需要时,再用 N 和 L 命令调入被调试 程序。命令中可以带有被调试程序的文件名,那么运行 Debug 的同时,还将指定的程序调入 主存;参数 1/2 是被调试程序所需要的参数。在 Debug 程序调入后,根据有无被调试程序及其类型相应设置存放器组的内容,发出 Debug 的提示符 “ ,此时就可用 Debug 命令来调试程序。? 运行 Debug 程序时,如果不带被调试程序,那么所有段存放器值相等,都指向
2、当前可 用的主存段;除 SP之外的通用存放器都设置为0,而SP指示当前堆栈顶在这个段的尾部; IP=0100h ;状态标志都是清 0 状态。? 运行 Debug 程序时,如果带入的被调试程序扩展名不是 .EXE ,那么 BX.CX 包含被调 试文件大小的字节数 BX 为高 16 位,其他同不带被调试程序的情况。? 运行 Debug 程序时,如果带入的被调试程序扩展名是 .EXE ,那么需要重新定位。此 时,CS : IP和SS : SP根据被调试程序确定,分别指向代码段和堆栈段。DS=ES指向当前可用的主存段, BX.CX 包含被调试文件大小的字节数 BX 为高 16 位,其 他通用存放器为
3、0,状态标志都是清 0状态。二、DEBUG 命令的格式Debug 的命令都是一个字母,后跟一个或多个参数:字母 参数 命令的使用中注意: 字母不分大小写; 只使用 16 进制数,没有后缀字母; 分隔符空格或逗号只在两个数值之间是必须的,命令和参数间可无分隔符; 每个命令只有按了回车键后才有效,可以用 Ctrl+Break 中止命令的执行; 命令如果不符合Debug的规那么,那么将以 “error提示,并用“A'指示错误位置。 许多命令的参数是主存逻辑地址, 形式是 “段基地址 : 偏移地址 。其中, 段基地址可以是段存放器或数值;偏移地址是数值。如果不输入段地址,那么采用默认值,可以是
4、缺省段 存放器值。如果没有提供偏移地址,那么通常就是当前偏移地址。对主存操作的命令还支持地址范围这种参数,它的形式是: “开始地址 结束地址 提结 束地址不能具有段地址,或者是: “开始地址 L 字节长度 提。三、DEBUG 子命令1、显示命令 DDDump 命令显示主存单元的内容,它的格式如下注意分号后的局部用于解释命 令功能,不是命令本身:D 地址 ;显示当前或指定开始地址的主存内容D 范围 ;显示指定范围的主存内容例如,显示当前接着上一个 D 命令显示的最后一个地址主存内容: 左边局部是主存逻辑地址,中间是连续 16 个字节的主存内容 16 进制数,以字节为单 位,右边局部是这 16 个
5、字节内容的 ASCII 字符显示, 不可显示字符用点 “ .表提示。 一个 D 命令仅显示“8亍X16个字节80列显示模式内容。再如:-d 100;显示数据段 100h 开始的主存单元-d cs:O;显示代码段的主存内容-d 2f0 L 20;显示ds:2f0h开始的20h个主存数据2、修改命令EE Enter丨命令用于修改主存内容,它有两种格式:E地址;格式1修改指定地址的内容E地址数据表 ;格式2,用数据表的数据修改指定地址的内容格式1是逐个单元相继修改的方法。例如,键入"es:100 ,Debug显示原来内容,用户可以直接输入新数据,然后按空格键显示下一个单元的内容,或者按键显
6、示上一个单元的内容;不需要修改可以直接按空格或键;这样,用户可以不断修改相继单元的内容,直到用回车键结束该命令为止。格式2可以一次修改多个单元,例如:-e ds:100 F3'XYZ'8D ;用 F3/'X'/'Y'/'Z'/8D 这 5 个数据替代 DS:0100 0104 的原来内 容3、填充命令FF Fill命令用于对一个主存区域填写内容,同时改写原来的内容,其格式为:F范围数据表该命令用数据表的数据写入指定范围的主存。如果数据个数超过指定的范围,那么忽略 多出的项;如果数据个数小于指定的范围,那么重复使用这些数据,直到填满
7、指定范围。0 Comma nJ Prompt debug= 0200 :O210 :022D :023D :I:D :0?5D:I27O0 210«233333C0£EE17E89J CO C9 09 Ct 肚EOBA 89 SO 06 3CB2E8甜3EUEF2EIO3ASCCD£6158698753801ACBt 蛇 hC Eft E9 E?75Eg2B-93ES-9>ES-9B2R-0119-D1 w-eo 5S-01BFA2E3CO3A3A3E8»82EA?5汕C3063EEAB6PSE«8A3Cr&理Dt93FU2EJC
8、7Sfl7575CAE3 U57 ?4 F& Ud “ cf eo 03 E? IB E8 % E811 22 33 的 55 砖 77 03:BZ1B :flZZD :0230 ;024e:O2601D27O1111333COSL31722 33C(T 89CJ 68D9 JQC6 06D4 3CDi B2LO EO56 5 6 s F3 8 1 5-E19 ?3D4 E E 5 D A c -4- 3 Q F 1 o 3 r37 2 c ft 9 9 5 8 7 A h£E-_£ 7 E6 9- OD 6 1 3 >4 c w99DDDm35ES EQ ?
9、2DIS ID 骚11脚DA01DI»0ft?E3CO3R Sfl 3E M?33EA75IhC30£3E558ft3C“D59GU199F82UC7SO7E7577 88 JC 5774 F6 QD CF BOIB 1903 E8IU £04、存放器命令RR Register丨命令用于显示和修改处理器的存放器,它有三种格式。R ;格式1,显示所有存放器内容和标志位状态例如,当我们刚进入Debug时,就可以执行该命令,显例如如如下:其中,前两行给出所有存放器的值,包括各个标志状态。最后一行给出了当前CS : IP处的指令;由于这是一个涉及数据的指令,这一行的最后还
10、给出相应单元的内容。R存放器名;格式2,显示和修改指定存放器例如,键入“rx,Debug给出当前AX内容,冒号后用于输入新数据,如不修改那么按Enter 键。RF ;格式3,显示和修改标志位Debug将显示当前各个标志位的状态。显示的符号及其状态如表F1.1所示,用户只要输入这些符号就可以修改对应的标志状态,键入的顺序可以任意。标志溢出OF 方向DF 中断IF 符号SF 零位ZF 稱助AF 奇偶PF 进位CF置慨符号0VDNEINGZRACPECT复位符号NVUPDIPLNZNAPONC5、汇编命令A汇编命令A Assemble用于将输入的汇编指令汇编成为机器代码保存于主存。A 地址;从指定地
11、址开始汇编指令A命令中如果没有指定地址,那么接着上一个A命令的最后一个单元开始;假设还没有使用过A命令,那么从当前 CS : IP开始。输入A命令后,就可以输入 8086指令,Debug将它们汇编成机器代码,相继地存放在 指定地址开始的存储区中,记住最后要输入一个回车结束A命令。进行汇编的步骤如下: 输入汇编命令 A 地址,按回车。Debug提示地址,等待你输入新指令; 输入汇编指令,按回车; 如上继续输入汇编指令,直到输入所有指令; 不输入内容就按回车,结束汇编,返回Debug的提示符状态。A命令支持标准的8086和8087浮点指令系统以及汇编语言语句格式,但要注意以 下一些规那么:?所有输
12、入的数值都是 16进制数;?段超越指令需要在相应指令前,单独一行输入;?段间远返回的助记符要使用 RETF ;? A命令也支持最常用的两个伪指令DB和DW。6、反汇编命令U反汇编命令U Un assemble丨将主存内容按照机器代码形成汇编指令显示:U 地址;从指定地址开始,反汇编32个字节80列显示模式U范围;对指定范围的主存内容进行反汇编U命令中如果没有指定地址,那么接着上一个U命令的最后一个单元开始;假设还没有使用过U命令,那么从当前 CS : IP开始。 | H I_ASd 匚ommand Prompt - debug ±masm&l 1 lt3Qla.eHe:WI&
13、#171;NTSYSTEM32>dehug d :Xma<in611Mt501 a .cueODOC 000322222222222FFFFFFFFFFF17ODOS OQD7 UQU? UffOB UftIJD 血F U011 0012 oiru 00K 0017 DD1H now noiE 71 noi? OQW 0S1C 0Q1E 0Q21BRFMJC SERA 8C03 2B0AU1E3D1£3D1t3D1E9 FA 3E02O3E3 FBEtmou B他CB21BanocBflODO BMUJFCI121 HUQ04CCDZ1HOU MOV MOU SUB SM
14、L SUL SUL SUL Cll HOU ADD STI NOU MOV IWT NOUNOU MODIMT NOU W7D$,DX 8X,SSBX,1 8,1 fl«,1 畔Js$,»SF,BXDXDOOAHVEI*21 HKGDOX H 1 X 1D ft 2 ft 2DDfl屏幕显示的左边是主存逻辑地址,中间是该指令的机器代码,而右边那么是对应的指令 汇编格式。7、运行命令G运行命令G Go从指定地址处开始运行程序,直到遇到断点或者程序正常结束。G =地址断点地址1,断点地址断点地址10G命令等号后的地址指定程序段运行的起始地址,如不指定那么从当前的 CS : IP
15、开始运行。断点地址如果只有偏移地址,那么默认是代码段CS;断点可以没有,但最多只能有 10个。程序遇到断点实际上就是断点中断指令 INT 3,停止执行,并显示当前所有存放器 和标志位的内容、以及下一条将要执行的指令显示内容同R命令,以便观察程序运行到此的情况。程序正常结束,将显示“Program terminated normally 。注意,G命令以及后面的T和P命令要指向正确的指令代码,否那么会出现不可预测的 结果,例如死机。8、跟踪命令T跟踪命令T Trace,也称为单步命令,每执行一条指令就显示运行结果,使程序员 可以细致地观察程序的执行情况。T =地址;逐条指令跟踪T =地址数值;多
16、条指令跟踪从指定地址起执行一条或数值参数指定条数的指令后停下来,每条指令执行后都要显示所有存放器和标志位的值以及下一条指令。如未指定地址那么从当前的CS : IP开始执行。注意给出的执行地址前有一个等号,否那么会被认为是被跟踪指令的条数数值。fl£F2:D01EBaO04CMOVT5C4C0O-t=0DX=flOOON=003lGF=IMDBP=ODOOSI-OOODoi=onflDES=flCE2SS=0CF4CS=0CF2ir=iua3NU UP ElPL HZHA P0 NCUCF2:0003HflU0S3DXN 3A1=WDBX-0020CX-O038DI=8CF4sr041
17、0Br-ffOOO$1=0000DIODOODS=O&F*ES=0CE2ss-ocrCS-0CF2IN ID 05HU UP ElPL HZNft PO tICOCFZzOIOSHCD3HOU83(,SSA£=000flCX=0fl38DX=ICF4SF=0420BF=flO0O$1=00*0DIflODODS=OCFES=0CE2SS=BCFCS=0CF2IP=0007M UP ElPL理HA P0 NCDCF2;0IO7SUB畤,DXnx-iiiiBX-I0IICX-0Q3IDK=CCFSP-I4WP=|fl»J$11010dvicf*ES=aC£?s
18、s=acFCS=ICF2ir=ioo?NV UP ElPL ZRHA PE HCDCF!DOJ -ID1LJSULIIX-OODO»X=0OOOCX-0038DI=0CF4ir=iMDr=iDonS1=M1QOIzODODDS=0EF4ES=0CE2SS=0CF4CS=0CF2iP=OflDBMU UP Elpl znNil PE NC0CF2:DDDBD1E3SUL'' Cunin iand PrompL debug1 K3Ola.eHeT命令逐条指令执行程序,遇到子程序 也会进入到子程序或中断效劳程序当中执行。CALL或中断调用INT n指令也不例外,9、继续命令
19、P继续命令P Proceed丨类似T命令,逐条执行指令、显示结果。但是当遇到子程序调 用、中断功能调用和循环指令等时,不在子程序、中断效劳程序或循环体中单步执行,而 是直接执行完成子程序、中断效劳程序或循环体,然后显示结果。当不需要调试子程序、中断效劳程序或循环程序段时,要应用P命令,而不是T命令。P =地址数值10、退出命令Q退出命令QQuit丨使Debug程序退出,返回 DOS。Q命令并无存盘功能,可使用 W命令存盘。11、命名命令N命名命令N Name丨把一个或两个可以包含路径的文件全名存入Debug中,以便在其后用L或W命令把文件装入或存盘。N文件名1,文件名212、装入命令L装入命令
20、LLoad丨将磁盘中的文件或扇区内容装载到主存中。L 地址;格式1:装入由N命令指定的文件一回&H Comma net Prompt - dehug-n d:1 Mt3D1a.exenM=OOOff BX=0OD« nS=flCE? tS=0Gf2 DCF2:ODOO BAFMJl2222222322222222FFFFFFFFFFFFFFFF 一 0-000000000000000OOOD0003 8EDA ODOS BCD?Dfffl? 3BBA W9 D1E3OflOB U1L3UAOD D1E9 UffUF DIE?U011 Fft 0012 SEQ2OOU O3C3 0ITU FB 0B17 BIlfJMJD D01n BW9 ID1t CD21D01E BRJ04CCX=O038 DX=OnD0 SP-0<iOn BPrODOD $I = ODOD OI = O0DD ss=ocr6 GS=UGFZ IP=GflOU NV UP El PL HZ Nft M flCNOU碍川CFMMHUD,0CF4NOUOSfDXHVV時,閒SUB眈X$MLB»,1SULBX,1SUL時/S»L8X,1CllHOU$S,DKADD$F,E)KSTINOU0,090MOV細PIHT21MOURKCOO格式1的L命令装载一个文件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 木竹材刨切工艺考核试卷及答案
- 桥梁施工安全防护设施验收工艺考核试卷及答案
- 橡胶硫化设备安全操作工艺考核试卷及答案
- 酶制剂提取工三级安全教育(班组级)考核试卷及答案
- 园林工程技术试题及答案
- 2025-2026学年赣美版(2024)小学美术三年级上册《体验先民生活》教学设计
- 银行支付结算试题及答案
- 银行运营管理岗位考试题及答案
- 银行英语考试题型及答案
- 银行信用度测试题及答案
- 化学使世界变得更加绚丽多彩
- 小学五年级上册综合实践活动全册教案
- 心理健康教育《我上学了》
- 冲压工艺培训课件
- 2025至2030中国移民服务行业市场发展现状及前景趋势与发展趋势分析与未来投资战略咨询研究报告
- 2025年中国电信招聘笔试参考题库附带答案详解
- 2025秋部编版(2024)八年级上册道德与法治 【教学课件】1.1《认识社会生活》
- 2025年重庆市高考历史试卷真题(含答案)
- 小学科学社团创客空间计划
- 租车紧急预案管理制度
- 2025秋人教版(2024)数学七年级上册教案 1.2.4 绝对值
评论
0/150
提交评论