实验一、实验箱介绍与DEBUG简单使用
一、实验目的
1)了解实验箱的构成
2)掌握模型机的结构框图
3)学会DEBUG的简单使用
二、实验内容
1.实验箱介绍
结合计算机的组成原理,确定运算器、控制器、存储器、输入设备、输出设备。
2.模型机的框图
3.DEBUG的简单使用
DEBUG须在DOS环境下运行。具体操作可以在Windows操作系统的“开始”菜单的“运行”对话框中输入“CMD”(命令command)如图1-1所示。
图1-1 Windows的运行窗口
Windows的“DOS”模式,如图1-2所示。
图1-2 Windows下的“DOS”模式
输入命令DEBUG(调试),见图1-3.
图1-3 DEBUG调试窗口
DEBUG命令是在“-”下,由键盘键入的。每条命令以单字母命令符开头,然后是命令的操作参数,操作参数与命令符之间用空格隔开,操作参数与操作参数之间用空格或逗号隔开,命令的结束符是回车键。命令及参数的输入可以是大小写的结合。Ctrl+Break键可中止命令的执行。Ctrl+Num Lock键可暂停屏幕卷动,按任一键继续。所用数均为十六进制数,不用加H。
有关DEBUG中的D(显示)、R(寄存器)、U(反汇编)、G(执行)和Q(退出)等命令已在前面讲过了。下面介绍本实验用到的DEBUG的命令:
(1)A-汇编,用于输入汇编语言源程序
(2)g-运行,运行用A命令编写的汇编语言程序
(3)e-编辑,用于修改计算机内存中存储单位的数据
(4)d-显示,用于显示计算机内存中存储单位的数据
(5)q-退出,用于退出DEBUG的状态,到DOS提示符下。
(1) 汇编命令A
格式:A[起始地址] 注:缺省时是以CS:100为起始地址,CS即Code Segment是代码段。如图1-4从地址0100H开始汇编,图中的代码段是13C5H。
如图1-4 从缺省的地址100H开始汇编
功能:键入A命令后显示段基址和段内偏移并等待用户从键盘逐条键入汇编命令,逐条汇编成代码指令,顺序存放到段地址和段内偏移所指定的内存区域,直到显示下一地址时用户直接键入回车键返回到提示符“-”。
现在输入段小程序(注意:在提示符“-”下输入的数据为16进制的)
mov al,12
mov bl,34
add al,bl
见图1-5,DEBUG下输入的一段小程序,注意最后行只按下回车符。
图1-5 DEBUG下A命令输入一段小程序
执行此段小程序如下:
(2)执行g命令
执行语句:从100~102(只执行1条指令) g=100 102
执行语句:从100~104(执行2条指令) g=100 104
执行语句:从100~106(执行3条指令) g=100 106
CPU内的寄存器AX,高8位是AH,低8位是AL,同样BH寄存器高8位是BH,低8位是BL。以上三条指令执行后,各寄存器的值分别是:AL为12H; BL为34H; AL为12H;
(3)退出debug的q命令
在‘-’提示符下,q命令为退出debug调试状态。
4.在debug下输入下面程序,程序中的h是十六进制(hexadecimal),CPU内AX是16位的寄存器,ah是高8位的寄存器,al是低8位的寄存器,同理BX类似。实验要求:1)将程序送入到100h内存单元中;2)将数据12h,34h送入1000h单元中;3)逐条执行指令,记录指令序号;4)记录1002h单元的值。
xxxx:100Mov al,[1000]
Mov bl,[1001]
Add al,bl
Jmp 010d
Nop
Nop
Mov [1002],al
hlt
...
xxxx:100012
xxxx:1001 34
xxxx:1002 xx
说明:在DEBUG下修改内存单元的命令是e,如下图所示,将1000h开始的3个单元中的数据分别置成12h,34h,99h,划线部分是按键。
-e 1000
13d7:1000 00.12 空格键 00.34空格键 00.99
-d 1000 1002
13d7:1000 12 34 99
执行上述程序后,存储单元1002h的内容将发生变化,请同学加以验证。
三、实验报告
1.画出模型机的框图
2.编写程序段,完成56+78的功能,程序运行的结果?
3.写出本实验内容4.中指令执行的序号,1002h地址的内容是多少?
实验二 DEBUG调试程序的应用
一、实验目的
1.复习DEBUG简单使用
2.学会DEBUG调试程序
二、实验内容
1.debug的启动与退出
1)直接启动DEBUG程序
如DEBUG.COM在C盘的根目录下,启动的方法是:
C:\>DEBUG