《微机原理与接口技术》
实 验 指 导 书
实验一、调试工具Debug的使用
一.实验目的
1. 学会使用MASM FOR WINDOWS 集成实验环境共享版软件。 2. 掌握汇编语言程序的上机过程。 3. 学习使用DEBUG程序的各种命令。 4.
5. 掌握用DEBUG调试自编程序的方法。 二.实验内容
1.学习MASM FOR WINDOWS 软件 2.汇编语言程序的上机过程
在MASM FOR WINDOWS集成实验环境的主界面下
第一步:点击第二行的“新建”,在程序模板的相应位置输入下列程序(黑体部分),点击第二行的:“保存”,取名为比如EX11.ASM的源程序;
DATA SEGMENT DATA CODE
NUM DB 82H, 68H, 88H SUM DB ?
ENDS SEGMENT
ASSUME CS:CODE,DS:DATA START: MOV AX, DATA
MOV DS,AX
MOV BX, OFFSET NUM
MOV AL, [BX] INC BX ADD AL, [BX] INC BX ADD AL , [BX] MOV SUM, AL CODE
MOV AH, 4CH INT 21H
ENDS
END START
第二步:点击第一行的“运行”,在下拉菜单中选择“编译成目标文件(OBJ)”,再选择“生成可执行文件(EXE)”,最后点击“运行”。程序运行后将自动回到主界面。
如果程序有错误,则在编译过程中有错误提示(错误行和错误原因),改正后再保存,
重新编译,直到编译成功为止。
第三步:点击第一行的“运行”,在下拉菜单中选择“DEBUG调试”,进入调试状态。
3. 学习使用DEBUG
DEBUG程序是一种专门为分析和调试汇编语言程序而设计的一种调试工具。它能使程序设计者接触到机器内部,具有跟踪程序执行、观察中间运行结果、显示和修改寄存器或存储单元内容、装入或显示、修改任何文件、完成磁盘读写等多种功能。经常用到的DEBUG指令有: (1) 单步执行命令T(也叫跟踪命令)
格式:T [N]];(N小于等于6)
从CS:IP开始执行程序,每执行1或(N)条停下来。执行后都将显示各寄存器的内容、标志位的状态、下条指令的CS:IP地址,下条指令的机器码和下一条要执行的指令。 (2) 显示、修改寄存器命令R
格式:R[寄存器名]
若缺省寄存器名,则显示当前所有寄存器内容、状态标志及将要执行的下一条指令的地址、及其指令代码及汇编语句形式等。如 R
若给出寄存器名称,则显示该寄存器的内容并可进行修改。如: R AX
(3) 显示内存单元内容命令D
格式: D[段地址:偏移地址]
如:D ES:0,将显示ES:0000~0070共128个单元的内容。
屏幕左边为每行的首地址(段:偏移量)。中间为从指定地址开始的128个内存单元的内容,用十六进制的格式输出, 右边为内存单元中的数据对应的相应可显示的ASCII码字符。没有对应的ASCII码就用.来代替。
(4) 修改存储单元命令E
格式1:E[地址]
可以逐个修改制定地址单元的当前内容,如:E 1000:0 F
在下图中,先用D查看1000:0~F单元的内容,再用E修改从1000:0开始的10个单元的内容,最后用D查看变化。