淮阴工学院
汇编语言程序设计实验报告
选题名称:实验一调试工具的使用方法训练
系(院):计算机工程学院
专业:计算机科学与技术
班级: 1101 姓名:康志杰学号: 1101301132
指导教师:王福德
学年学期:2013 学年第 2 学期
2013 年 4 月15 日
实验一利用DEBUG调试程序调试程序段
<1 > 实验目的:
(1)熟悉DEBUG有关命令的使用方法
(2)利用DEBUG掌握有关指令的功能
(3)利用DEBUG运行简单的程序段
<2 > 实验内容
(1)进入和退出DEBUG程序
1)开始——运行,输入cmd,点确定或回车键进入DOS环境
2)在命令窗口输入debug进入debug程序
3)进入debug程序后,按q退出
(2) 学会DEBUG中的D命令、E命令、R命令、T命令、A命令、G命令等的使用。
对于U命
令、N命令、W命令等,也应试一下。
1 显示存储器单元命令D
格式:D [<地址范围>]
功能:显示指定地址范围内的存储区数据,包括十六进制数据形式及其对应的ASCII码字符显示。
2 写存储器单元命令E
格式:E <地址> [<字符串>]
功能:逐个修改指定单元内容或将字节串写入指定的一组连续单元。
例:将字节串′computer′写入以100H为起始地址的存储器区。
-E 100′computer′
3显示和修改某个指定寄存器内容,
格式为:-R 寄存器名
例如打入:-R AX
系统将响应如下:
AX 0000
:
表示AX当前内容为0000,此时若不对其作修改,可按ENTER键,否则,打入修改后内容,如:
-R BX
BX 0000
:1000
则BX内容由0000改为1000
4显示和修改标志位状态,
命令格式为:-RF
系统将给出响应,如
NV UP EI PL NZ NA PO NC-
这时若不作修改可按ENTER键,否则在“-”号之后键入修改值,键入顺序任意。
如
NV UP EI PL NZ NA PO NC-ZR CY
5汇编命令A
格式:A [<起始地址>]
功能:逐行汇编程序,主要用于小段程序的汇编。
说明:使用A命令,如果未给出起始地址,汇编后的程序代码从指令指针寄存器IP 的值指定的地址开始存放。
按两次回车键可退出汇编命令A的状态。
例:
-A 100
13E7:0100 MOV AX,100
13E7:0103 INT 11
13E7:0105 INT 12
13E7:0107
6 反汇编命令U
格式:U [<地址范围>]
功能:在指定地址范围内,将二进制机器指令逐条翻译为汇编语言符号指令。
例:将前一个例子的程序进行反汇编
-
-U 100 104
13E7:0100 B80001 MOV AX,0100
13E7:0103 CD11 INT 11
-
-U100 105
13E7:0100 B80001 MOV AX,0100
13E7:0103 CD11 INT 11
13E7:0105 CD12 INT 12
-
7 退出DEBUG命令Q,
该命令格式为:Q
它退出DEBUG程序,返回DOS,但该命令本身并不把在内存中的文件存盘,如需存盘,应在执行Q命令前先执行写命令W。
(3) 利用DEBUG,验证乘法、除法、加法、减法、带进位加、带借位减、堆栈操作指令、串
操作指令的功能。
1.乘法
2.除法
3.加法
4.减法
5.带进位加
6.带借位减
7.堆栈操作指令
8.串操作指令
<3 > 启动DEBUG后,要装入某一个.EXE文件,应通过什么方法实现?
答:按以下方法装入
<4 > 实验体会:
通过本次实验对汇编语言的运行环境debug有了初步的了解,并对一些汇编语言的基本指令及其功能有了初步的认识。
会编写一些基本的汇编指令对汇编的加减乘除等运算进行验证性的实验,如何在debug环境下装入一个.exe的文件。