预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共15页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

实验二调试程序DEBUG介绍DEBUG的功能:DEBUG是专门为汇编语言设计的调试工具软件,它通过单步、设置断点等方式,为使用者提供了非常有效的调试手段。在DEBUG下所有输入的数据都是十六进制,所以不需要后面加H。并且不区分大、小写字母。DEBUG的主要命令一、R(显示修改寄存器内容)-R;显示所有寄存器内容。-RREG;修改所有寄存器内容。-RF;显示并可修改标志寄存器 内容。二、Q(退出):退出DEBUG,该操作不保护文件。-Q三、D(显示存储器的内容):默认寄存器是DS,格式是:-D段地址:偏移地址;显示80H(128)个字节的内容。-D显示从上一次结束处开始的80H个字节的内容。四、E(修改内存单元内容):默认寄存器是DS,格式是:-E起始地址数据数据数据…… -E105133A21 ;从DS:105H开始输入3个字节的内容-ECS:211212A ;从CS:211H开始输入2个字节的内容-E110‘anything’ ;输入从DS:110H开始的字符串五、U(反汇编):将机器指令进行反汇编,默认的寄存器是CS:IP,从指定地址开始反汇编32个字节,它的格式是:-U段地址:偏移地址-U段地址:偏移地址1偏移地址2-UCS:100;反汇编开始于CS:100-U100150;反汇编从100H到 150H的内容。六、T命令:以单步方式执行程序-T;执行一条指令。-T=段地址:偏移地址-T10;执行下面10H(16) 条指令。-T=32 ;从指定IP=0003开始, 执行下面2条指令.七、A命令(以汇编指令的形式在内存中写入机器指令):-A段地址:偏移地址;从指定地址1开始汇编,结果写入内存。-A;不指定地址,则从上 次 A命令开始汇编。-A100;087D:0100MOVAL,4E087D:0102ADDAL,2D087D:0104MOVAL,4C087D:0106INT21H在A命令下不能使用字段名,A命令只识别指令和DB、DW伪指令。八、G(运行可执行程序):-G=段地址:偏移地址-G;从程序当前位置执行到程序结束-G=200260;从指定200H地址开始执行,遇到断点260H停止,显示寄存器和标志寄存器的内容。标志位:“1”“0” OF:溢出标志——OV溢出,NV没溢出 DF:方向标志——DN减量,UP增量 IF:中断允许标志——EI允许,DI禁止 SF:符号标志——NG负数,PL正数 ZF:“0”标志——ZR为“0”,NZ不为“0” AF:半进位标志——AC有半进位,NA无半进位 PF:奇偶标志——PE偶数,PO奇数 CF:进位标志——CY有进位,NC无进位 实验内容: 1、下列程序段执行完后,BX寄存器的内容是什么? MOV CL,3 MOV BX,0B7H ROLBX,1 ROR BX,CL 2、下列程序段中的每条指令执行完后,AX寄存器及CF、SF、ZF和OF的内容是什么? MOVAX,0 DEC AX ADDAX,7FFFH ADD AX,2 NOTAX SUB AX,0FFFFH ADD AX,8000H SUB AX,1 AND AX,58D1H SAL AX,1 SAR AX,1 NEG AX ROR AX,1 思考题