掌握DEBUG 基本命令及其功能Word格式文档下载.docx
《掌握DEBUG 基本命令及其功能Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《掌握DEBUG 基本命令及其功能Word格式文档下载.docx(12页珍藏版)》请在冰豆网上搜索。
b8204emovax,4E20H
051614addax,1416H
bb0020movbx,2000H
01d8addax,bx
89c3movbx,ax
01d8addax,bx
b81a00movax,001AH
bb2600movbx,0026H
00d8addal,bl
00dcaddah,bl
00c7addbh,al
b400movah,0
049caddal,9CH
提示:
可用E命令和A命令以两种方式将指令写入内存。
注意用T命令执行时,CS:
IP的指向。
1、操作前
2、一次输入完后
3、movax,4E20H
4、addax,1416H
5、movbx,2000H
6、addax,bx
7、movbx,ax
8、addax,bx
9、movax,001AH
10、movbx,0026H
11、addal,bl
12、addah,bl
13、addbh,al
14、movah,0
15、addal,bl
16、addal,9CH
(2)将下面3条指令写入从2000:
0开始的内存单元中,利用这3条指令计算2的8次方。
movax,1
addax,ax
jmp2000:
0003
1、输入指令
2、改变CS和IP
3、逐条执行
(3)查看内存中的内容
PC机主板上的ROM中写有一个生产日期,在内存FFF00H~FFFFFH的某几个单元中,请找到这个生产日期并试图改变它。
(内存ffff:
0005~ffff:
000C(共8个字节单元中)处)
1、找到日期
2、改变日期
由于日期存放在主板的rom上,所以日期不能被改变。
【下篇】用机器指令和汇编指令编程
实验任务
(1)使用Debug,将上面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。
movax,ffff
movds,ax
movax,2200
movss,ax
movsp,0100
movax,[0];
ax=c0ea
addax,[2];
ax=c0fc
movbx,[4];
bx=30f0
addbx,[6];
bx=6021
pushax;
sp=00fe;
修改的内存单元的地址是2200:
00ff,2200:
00fe内容为c0,fc
pushbx;
sp=00fc;
修改的内存单元的地址是2200:
00fd,2200:
00fc内容为60,21
popax;
ax=6021
popbx;
sp=0100;
bx=c0fc
push[4];
00fe内容为30,f0
push[6];
00fc内容为2c,31
1、写入内存
2、逐条执行
(2)使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。
(逐条执行,每条指令执行结果截图)如果有问题请说明原因
汇编指令
movax,1000H
movds,[0]
addds,ax
输入后
原因:
段寄存器不可用在算术指令中。
(3)仔细观察下图中的实验过程,然后分析:
为什么2000:
0~2000:
f中的内容会发生改变?
Debug执行单步中断处理程序时栈的内容会发生改变。
【实验一补充】