《A汇编程序运行方式DEBUG命令课件》由会员分享,可在线阅读,更多相关《A汇编程序运行方式DEBUG命令课件(26页珍藏版)》请在金锄头文库上搜索。
1、1.1.直接启动直接启动 DEBUG.EXE是是DOS环境下的可执行程序。环境下的可执行程序。在在DOS提示符下键入命令:提示符下键入命令:如:如:C: DEBUG 在调用在调用DEBUG程序后,出现程序后,出现“一一”提示符,等提示符,等待使用待使用DEBUG命令。命令。DEBUG程序的启动1DEBUG程序的调用2DEBUG的常用命令的常用命令1.A2.U3.T4.D5.R6.E7.F8.Q注意:大家在练习时,可用注意:大家在练习时,可用MOV指令指令MOV AX,1234MOV BX,3456MOV DX,7890MOV AL,56MOV BL,89MOV CL,78MOV DL,86MO
2、V DH,00MOV AH,23MOV BH,99MOV CH,80ADD AX,1234 3汇编命令A格式格式 :A起始地址起始地址功能:功能:1. 从指定从指定起始地址起始地址单元开始存放写入的汇编语言的指令语单元开始存放写入的汇编语言的指令语 句。若缺省起始地址句。若缺省起始地址,则从当前则从当前CS:0100地址开始存放。地址开始存放。2. 每当输入一行语句后,按每当输入一行语句后,按Enter键,输入的语句有效。键,输入的语句有效。 若输入的语句中有错,若输入的语句中有错,DEBUG会显示会显示“Error”,并需,并需 要重新输入。要重新输入。3. 用用A命令写入程序语句完毕后,最
3、后一行不要输入并直接命令写入程序语句完毕后,最后一行不要输入并直接 按按Enter键键(或或Ctrl+C),退出,退出A命令。命令。4. A命令按行汇编,主要是用于小段程序的汇编或对目标程序命令按行汇编,主要是用于小段程序的汇编或对目标程序 的修改。的修改。4实例 说明:说明: 所有输入的数据均默认为十六进制且不用所有输入的数据均默认为十六进制且不用H字符(省略字符(省略H) 用汇编命令用汇编命令a编写好指令后,必须用编写好指令后,必须用T命令去执行(看第命令去执行(看第8张张ppt) 5反汇编命令U 格式格式1:U 起始地址起始地址 格式格式2:U 起始地址起始地址结束地址结束地址| |字节
4、数字节数 功能:功能: 1. 格式格式1从指定起始地址处开始将从指定起始地址处开始将32个字节的目标个字节的目标 代码转换成汇编指令形式。代码转换成汇编指令形式。 2. 缺省起始地址缺省起始地址, ,则从当前地址则从当前地址CS:IP开始。开始。 3. 格式格式2将指定范围的内存单元中的目标代码转换将指定范围的内存单元中的目标代码转换 成汇编指令。起始和结束地址范围是可选项,无成汇编指令。起始和结束地址范围是可选项,无 此项则从当前的地址单元开始反汇编此项则从当前的地址单元开始反汇编32个字节。个字节。 6反汇编命令U 从指定地址开始反汇编从指定地址开始反汇编32个字节个字节7执行命令执行命令
5、( (T) ) 多条指令跟踪多条指令跟踪格式:格式:_ _T = =起始地址起始地址 正整数跟踪指令的条数正整数跟踪指令的条数 功能:从指定起执行正整数条指令后停下来。功能:从指定起执行正整数条指令后停下来。 逐条指令跟踪逐条指令跟踪格式格式 :_ _T = =起始地址起始地址 8运行命令运行命令( (G) ) 格式格式 :_ _GG = =起始地址起始地址断点地断点地 功能:功能:CPU从指定起始地址开始执行,在断点处中断。若从指定起始地址开始执行,在断点处中断。若缺省起始地址,则从当前缺省起始地址,则从当前CS:IP指示地址开始执行一条指指示地址开始执行一条指令。令。9实例 说明:说明:
6、程序在执行该地址处的指令后停下来,且显示程序在执行该地址处的指令后停下来,且显示CPU当前所有寄存器当前所有寄存器 及标志寄存器的内容。并显示下一条指令的地址和内容。及标志寄存器的内容。并显示下一条指令的地址和内容。 若无地址就从起始地址处单步执行一条指令。若无地址就从起始地址处单步执行一条指令。10检查和修改寄存器内容的命令R(REGISTER)格式格式1: 1: R 11检查和修改寄存器内容的命令R(REGISTER)格式格式1: 1: R 寄存器名寄存器名 12标志寄存器的设置标志名称标志名称设置设置未设置未设置OFOv(溢出溢出)Nv(未溢出未溢出)ZF ZRNZ(不等于不等于0)AF
7、ACNA(无进位无进位)PFPE(偶偶)PO(奇奇)SFNG(负负)PL(正正)CFCYNC(清除进位清除进位)DFDN(减少减少)UP(增加增加)IFEI(许可许可)DI(禁止禁止)13显示和修改状态标志的命令RF格式格式1: 1: RF 14显示存储单元的命令D(DUMP)格式格式1:D格式格式2:D起始地址起始地址格式格式3: D起始地址起始地址 结束地址结束地址格式格式4: D段地址段地址:起始地址起始地址 15显示存储单元的命令D(DUMP)格式格式1 1:D D 每次显示每次显示8080个字节的内容,左边用十六进制表示每个字节的内容,左边用十六进制表示每个字节,右边用个字节,右边用
8、ASCIIASCII字符表示每个字节,字符表示每个字节,. .表示不可表示不可显示的字符。显示的字符。16显示存储单元的命令D(DUMP)格式格式2:D起始地址起始地址17显示存储单元的命令D(DUMP)格式格式3: D起始地址起始地址 结束地址结束地址 18显示存储单元的命令D(DUMP)格式格式4: D段地址段地址:起始地址起始地址 19修改存储单元内容的命令E(ENTER)格式格式1:1: E 起始地址起始地址 内容表内容表功能:功能:按按内容表内容表的内容修改从起始地址开始的多的内容修改从起始地址开始的多 个存储单元内容,即用个存储单元内容,即用内容表内容表指定的内容指定的内容 来代替
9、存储单元当前内容。来代替存储单元当前内容。 20实例 其中其中X,Y.Z,2D各占一个字节,该命令可各占一个字节,该命令可以用这四以用这四个字节来替代存储单元个字节来替代存储单元00000003原来的内容。原来的内容。E 0000 XYZ2D/E 0000 XYZ,2D21修改存储单元内容的命令E(ENTER)格式格式2: 2: E 起始地址起始地址 22修改存储单元内容的命令E(ENTER)格式格式2: 2: E 起始地址起始地址 按空格键接着修改下一个内容。按空格键接着修改下一个内容。23填写命令F 格式格式1: F 起始地址起始地址 内容表内容表 从起始地址开始,用内容表连续填充从起始地址开始,用内容表连续填充80 个字节个字节24填写命令F 格式格式2 F 起始地址起始地址 常数常数 内容表内容表 常数:表示起始地址与末地址的差常数:表示起始地址与末地址的差; 25格式:Q功能:退出DEBUG,返回到操作系统。以上介绍的是DEBUG常用命令,其他命令请参考有关书籍。退出命令Q26