汇编debug调试程序

1. debug程序使用:C>debug 文件名.exe

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=0000

DI=0000   DS=3000  ES=23A0  CS=138E  IP=0000

NV UP DI PL NZ NA PO NC

138E:0000 MOV AX,1234

 -R AX          ;输入命令

 AX 0014      ;显示AX的内容

:                ;供修改,不修改按回车。


若对标志寄存器进行修改,输入:-RF

屏幕显示如下信息,分别表示OF、DF、IF、SF、ZF、AF、PF、CF的状态。

NV UP DI PL NZ NA PO NC

不修改按回车键。要修改需个别输入一个或多个此标志的相反值,再按回车键。R命令只能显示、修改16位寄存器。

(4)显示存储单元命令 D

格式1:D[起始地址]

格式2:D[起始地址][结束地址|字节数]

功能:格式1从起始地址开始按十六进制显示80H个单元的内容,每行16个单元,共8行,每行右边显示16个单元的ASCII码,不可显示的ASCII码则显示“·”。格式2显示指定范围内存储单元的内容,其他显示方式与格式1一样。如果缺省起始地址或地址范围,则从当前的地址开始按格式1显示。

例如:   -D 200           ;表示从DS:0200H开始显示128个单元内容

              -D 100 120     ;表示显示DS:0100-DS:0120单元的内容

说明:在DEBUG中,地址表示方式有如下形式:

段寄存器名:相对地址,如:DS:100

段基值:偏移地址(相对地址),如:23A0:1500

(5)修改存储单元命令 E

格式1:E[起始地址] [内容表]

格式2:E[地址]

功能:格式1按内容表的内容修改从起始地址开始的多个存储单元内容,即用内容表指定的内容来代替存储单元当前内容。

 例如:—E   DS:0100  'VAR'  12  34

 表示从DS:0100 为起始单元的连续五个字节单元内容依次被修改为 'V'、'A'、'R'、12H、34H。

格式2是逐个修改指定地址单元的当前内容。

如:—E DS:0010

156F:0010 41.5F

其中156F:0010单元原来的值是41H,5FH为输入的修改值。若只修改一个单元的内容,这时按回车键即可;若还想继续修改下一个单元内容,此时应按空格键,就显示下一个单元的内容,需修改就键入新的内容,不修改再按空格跳过,如此重复直到修改完毕,按回车键返回DEBUG“-”提示符。如果在修改过程中,将空格键换成按“-”键,则表示可以修改前一个单元的内容。

(6)运行命令 G

格式:G[=起始地址][第一断点地址[第二断点地址……]]

功能:CPU从指定起始地址开始执行,依次在第一、第二等断点处中断。若缺省起始地址,则从当前CS:IP指示地址开始执行一条指令。最多可设置10个断点。

(7)跟踪命令 T

格式:T[起始地址][正整数]

功能:从指定地址开始执行‘正整数’条指令,若缺省‘正整数’,表示执行一条指令,若两项都缺省,表示从当前CS:IP指示地址开始执行一条指令。

(8)指定文件命令 N

 格式:N<文件名或扩展名>

功能:指定即将调入内存或从内存写入磁盘的文件名。该命令应该用在L命令和W命令之前。

(9)装入命令 L

格式1:L[起始地址][盘符号][扇区号][扇区数]

格式2:L[起始地址]

功能:格式1根据盘符号,将指定扇区的内容装入到指定起始地址的存储区中。

格式2将N命令指出的文件装入到指定起始地址的存储区中,若省略起始地址,则装入到CS:100处或按原来文件定位约定装入到相应位置。

(10)写磁盘命令 W

格式1:W<起始地址>[驱动器号]<起始扇区><扇区数>

格式2:W[起始地址]

功能:格式1把指定地址开始的内容数据写到磁盘上指定的扇区中。

格式2将起始地址的BX×10000H+CX个字节内容存放到由N命令指定的文件中。在格式2的W命令之前,除用N命令指定存盘的文件名外,还必须将要写的字节数用R命令送入BX和CX中。

(11)退出命令 Q

 格式:Q

功能:退出DEBUG,返回到操作系统。

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页