文档详情

利用DEBUG调试汇编语言程序段.docx

发布:2017-06-19约3.04千字共7页下载文档
文本预览下载声明
利用DEBUG调试汇编语言程序段 一.实验目的 1.熟悉DEBUG有关命令的使用方法; 2.利用DEBUG掌握有关指令的功能; 3.利用DEBUG运行简单的程序段。 二.实验内容 1.进入和退出DEBUG程序; 1)开始—运行,输入cmd,点确定进入命令窗口 2)在命令窗口中输入dubug进入debug程序 3)进入debug窗口后,输入q命令退出debug 2.学会DEBUG中的 1)D命令(显示内存数据D 段地址:偏移地址) 例1:-D100 ;显示DS段, 0100开始的128个字节内容 说明:指定要显示其内容的内存区域的起始和结束地址,或起始地址和长度。? DSEGREG[起始地址] [L 长度] ;显示SEGREG段中(缺省内默认为DS), 以[起始地址] (缺省内为当前的偏移地址),开始的[L 长度] (缺省内默认为128)个字节的内容. D SEGREG[段地址:偏移地址] ;显示SEGREG段中(缺省内默认为DS), [段地址:偏移地址] 开始的[L 长度] (缺省内默认为128)个字节内容 ??? ?-D??;默认段寄存器为DS,当前偏移地址(刚进入debug程序偏移地址为0100H) -D DS:100 ;显示DS段, 0100H开始的128个字节内容 -D CS:200 ;显示CS段, 0200H开始的128个字节内容 ???? -D 200:100 ;显示DS段, 0200:0100H开始的128个字节内容 ???? -D 200;显示DS段, 0200H开始的128个字节内容 ???? -D 100 L 10 ;显示DS段, 100H开始的100H个字节内容 2)E命令(修改指定内存) 例1:-E100 41 42 43 44 48 47 46 45 -D 100,L08   结果:08F1:0100 41 42 43 44 48 47 46 45 例2: -E 100:    08F1:0100 76 42 :42是操作员键入    此命令是将原100号内存内容76修改为42,用D命令可察看。 ① E 地址??;从指定地址开始,修改(或连续修改)存储单元内容。DEBUG首先显示指定单元内容,如要修改,可输入新数据;空格键显示下一个单元内容并可修改,减号键显示上一个单元内容并可修改;如不修改,可直接按空格键或减号键;回车键结束命令。 ???????② E 地址 数据表;从指定的地址开始用数据表给定的数据修改存储单元。 ????-E DS:100 F3 ‘AB’ 8D ; 把DS段中0100H开始的四个字节修改为F3 ‘AB’(A和B的ASCII码) 8D 也可以按下面的方式实现 3)R命令(显示当前寄存器的内容) 显示修改寄存器命令R ???????R;★显示所有寄存器和标志位状态; ?????????????★显示当前CS:IP指向的指令。 ???????显示标志时使用的符号: ???????标志???????????????????标志=1?????????标志=0 ??????? OF??????????????????????OV????????????????NV ??????? DF??????????????????????DN????????????????UP ??????? IF???????????????????????EI??????????????????DI ??????? SF??????????????????????NG????????????????PL ??????? ZF??????????????????????ZR????????????????NZ ??????? AF??????????????????????AC????????????????NA ??????? PF??????????????????????PE?????????????????PO ??????? CF??????????????????????CY????????????????NC 4)T命令(设置陷井,单步执行) ?① T;从当前IP开始执行一条指令。 ???????② T 数值;从当前IP开始执行多条指令, 数值:执行的指令条数。 ???????② T =地址;从给定的地址执行一条指令 ???????③ T =地址??数值;从给定的地址执行多条指令, 数值:执行的指令条数. ??? ?-T ; 从当前IP开始执行一条指令 ???? -T5 ; 从当前IP开始执行5条指令 -T=100???5 ; 从当前0100H开始执行5条指令 5)A命令(将指令直接汇编成机器码输入到内存中。) 汇编命令A ???????
显示全部
相似文档