DEBUG-

上传人:jiups****uk12 文档编号:45672998 上传时间:2018-06-18 格式:PPT 页数:16 大小:285KB
返回 下载 相关 举报
DEBUG-_第1页
第1页 / 共16页
DEBUG-_第2页
第2页 / 共16页
DEBUG-_第3页
第3页 / 共16页
DEBUG-_第4页
第4页 / 共16页
DEBUG-_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《DEBUG-》由会员分享,可在线阅读,更多相关《DEBUG-(16页珍藏版)》请在金锄头文库上搜索。

1、利用debug命令掌握寻址方式DEBUG为汇编语言程序员提供了非常有效的调 试手段。n进入命令提示符窗口:开始/程序/附件/命令 提示符或者开始/运行/cmdn命令提示符窗口下输入debugn屏幕显示-:表示进入debug调试状态DEBUG的主要命令1、显示存储单元的命令D 格式为:Daddress或_Drange Address格式:段地址:偏移地址 注意: 段地址可以是段名或者数字 D命令默认显示DS段的内容 Range格式:起始地址 结束地址例如, -d100 120 显示0100至0120的单元内容 屏幕最左边显示主存逻辑地址 中间用十六进制表示每个字节 右边用ASCII字符表示每个字

2、节,表示不可显示的字 符。2、修改存储单元内容:E命令 第一种格式:可以用给定的列表中的内容表来替代指定范围的 存储单元内容。 格式为:-E addresslist 例如,-E DS:100 F3XYZ8D 该命令可以用这五个字节来替代存储单元DS:0100到0104的 原先的内容。 第二种格式:逐个单元相继修改 命令格式为: -E address 例如,-E DS:100则可能显示为:18E4:0100 89.-如果需要把该单元的内容修改为78,则用户可以直接键入 78,再按“空格”键可接着显示下一个单元的内容,如下: 18E4:0100 89.78 1B.-这样,用户可以不断修改相继单元的

3、内容,直到用ENTER 键结束该命令为止。3.填写命令F(FILL): 格式为: -F range list 例如:-F 4BA:0100 5 F3XYZ8D使04BA:01000104单元包含指定的五 个字节的内容。 如果list中的字节数超过指定的范围,则忽略超 过的项; 如果list的字节数小于指定的范围,则重复使用 list填入,直到填满指定的所有单元为止。4.检查和修改寄存器内容的命令R(register) 格式1: -R 显示CPU内所有寄存器内容和标志位状态 格式2:-R register name显示和修改某个寄存器内容 例如,键入 -R AX系统将响应如下:AX F1F4 :

4、 即AX寄存器的当前内容为F1F4,如不修改则按ENTER键, 否则,可键入欲修改的内容,如: AX F1F4 :059F 则把AX寄存器的内容修改为059F。 格式3:显示和修改标志位状态 如:-RF 系统将响应,OV DN EI NG ZR AC PE CY-此时,如不修改其内容可按ENTER键,否则,可键入欲 修改的内容,如:OV DN EI NG ZR AC PE CY-PONZDINV即可,可见键入的顺序可以是任意的。5.运行命令Gn其格式为:-G=address1address2address3其中,地址1指定了运行的起始地址,如不指定则从当前 的CS:IP开始运行。后面的地址均为

5、断点地址,当指令执 行到断点时,就停止执行并显示当前所有寄存器及标志位的 内容,和下一条将要执行的指令。6.跟踪命令T(Trace。 格式1:逐条指令跟踪-T =address从指定地址起执行一条指令后停下来,显 示所有寄存器内容及标志位的值。如未指定 地址则从当前的CS:IP开始执行。 格式2:多条指令跟踪-T =addressvalue从指定地址起执行n条指令后停下来,n由 value指定。7.汇编命令A(Assemble) 格式为: -Aaddress该命令允许键入汇编语言语句,并能把它们汇编成机器代 码,相继地存放在从指定地址开始的存储区中。 必须注意:DEBUG把键入的数字均看成十六

6、进制数,所以如 要键入十进制数,则其后应加以说明,如100D 。8.反汇编命令U(Unassemble) 格式1: -Uaddress 从指定地址开始,反汇编32个字节。如果地址被省略,则从上 一个U命令的最后一条指令的下一个单元开始显示32个字节 。 例如: -u100 结果:18E4:0100 C70604023801 MOV WORD PTR0204,013818E4:0106 C70606020002 MOV WORD PTR0206,020018E4:010C C70606020202 MOV WORD PTR0208,020218E4:0112 BBO4O2 MOV BX,0204

7、18E4:0115 E80200 CALL 011A18E4:0118 CD20 INT 2018E4:011A 50 PUSH AX18E4:011B 51 PUSH CX18E4:011C 56 PUSH SI18E4:011D 57 PUSH DI18E4:011E 8B37 MOV SI,BX格式2:-Urange 对指定范围内的存储单元进行反汇编 例如:-u100 10c18E4:0100 C70604023801 MOV WORD PTR0204,013818E4:0106 C70606020002 MOV WORD PTR0206,020018E4:010C C706060202

8、02 MOV WORD PTR0208,0202 或-u100 112 18E4:0100 C70604023801 MOV WORD PTR0204,013818E4:0106 C70606020002 MOV WORD PTR0206,020018E4:010C C70606020202 MOV WORD PTR0208,0202可见这两种格式是等效的。9.命名命令N(Name) 格式为: -N filespecs filespecs 命令把两个文件标识符格式化在CS:5CH和CS: 6CH的两个文件控制块中,以便在其后用L或W命 令把文件装入存盘。 filespecs的格式可以是: d:

9、path filename.ext 例如,-N myprog-L- 可把文件myprog装入存储器。10.装入命令(Load),有两种功能。 格式1: -Laddressdrive sector sector 把磁盘上指定扇区范围的内容装入到存储器从 指定地址开始的区域中。 格式2: -Laddress 装入指定文件,此命令装入已在CS:5CH中格 式化了文件控制块所指定的文件。如未指定 地址,则装入CS:0100开始的存储区中。11.写命令W(Write),有两种功能。 格式1: -W address drive sector sector 把数据写入磁盘的指定扇区。 格式2:-Waddress 把数据写入指定的文件中。 此命令把指定的存储区中的数据写入由CS: 5CH处的文件控制块所指定的文件中。如未 指定地址则数据从CS:0100开始。要写入 文件的字节数应先放入BX和CX中。12.退出DEBUG命令Q(Quit) 格式为:-Q 它退出DEBUG,返回DOS。本命令并无存盘 功能,如需存盘应先使用W命令。 作业:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号