1.学习使用DEBUG程序的各种命令。
2.了解计算机取指令、执行指令的工作过程。
3.掌握用DEBUG调试工具自编程序的方法。
4. 掌握程序片段使用DEBUG的调试方法。
5. 熟悉并搭建汇编语言环境。

图表 1 DOSBox安装
masm文件夹:

图表 2 masm
将工具从安装目录挂载到C盘:

图表 3 挂载
原生debug窗口较小,修改分辨率:

图表 4 屏幕大小配置

图表 5 汇编代码编辑
程序的编译链接:执行masm lab_1.asm;

图表 6 编译链接
程序的编译链接,执行link lab_1.obj;

图表 7 编译链接
程序的debug运行:

图表 8 查看寄存器

图表 9 查看当前程序指令

图表 10 单步执行

图表 11 单步执行
Debug的R命令查看、改变CPU寄存器内容:

图表 12 查看寄存器内容
修改AX中的值为00AC:

图表 13 修改AX寄存器内容
Debug的D命令查看内存中的内容:可以用“d 段地址:偏移地址” 的格式来查看。

图表 14 查看内存内容
Debug的E命令改写内存中的内容:将内存1000:0010开始的10个存储单元中的数据写为0,1,2,3,4,5,6,7,8,9。

图表 15 改写内存内容
Debug的U命令将内存中机器指令翻译成汇编指令:

图表 16 反汇编

图表 17 反汇编
Debug的A命令以汇编指令的格式在内存中写入一条机器指令:

图表 18 写入指令
Debug的T命令执行一条机器指令:
当前CS与IP的值分别为:CS=073F IP=0100 要使得计算机执行我们写入的1000:0020命令,需要先将当前CS与IP改为CS=1000 IP=0020

图表 19 T指令执行指令
P命令类似于T命令,只是不会进入子程序或中断服务程序中,遇到循环指令则一并执行完所有循环。不需要调试子程序,中断服务程序以及循环体时,要应用P命令,而不是T命令。

图表 20 P指令执行指令
使用A命令,建立一段程序,程序功能:计算AX+BX+CX+DX。要求用R命令预先设置AX、BX、CX、DX几个寄存器的值。用U命令反汇编该程序,查看各指令机器码及存储位置。并用T命令单步执行该程序,记录其执行结果。

图表 21 写入程序

图表 22 修改CS:IP

图表 23 反汇编

图表 24 单步执行

图表 25 单步执行

图表 26 查看结果