掌握DEBUG 基本命令及其功能.docx
- 文档编号:2928968
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:12
- 大小:189.04KB
掌握DEBUG 基本命令及其功能.docx
《掌握DEBUG 基本命令及其功能.docx》由会员分享,可在线阅读,更多相关《掌握DEBUG 基本命令及其功能.docx(12页珍藏版)》请在冰豆网上搜索。
掌握DEBUG基本命令及其功能
实验一掌握DEBUG基本命令及其功能
【调试debug步骤】
【上篇】查看CPU和内存,用机器指令和汇编指令编程
一.实验目的:
掌握DEBUG的基本命令及其功能
掌握win7win8使用DEBUG功能
二.实验任务
(1)使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。
(逐条执行,每条指令执行结果截图)
机器码汇编指令
b8204emovax,4E20H
051614addax,1416H
bb0020movbx,2000H
01d8addax,bx
89c3movbx,ax
01d8addax,bx
b81a00movax,001AH
bb2600movbx,0026H
00d8addal,bl
00dcaddah,bl
00c7addbh,al
b400movah,0
00d8addal,bl
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;sp=00fe;ax=6021
popbx;sp=0100;bx=c0fc
push[4];sp=00fe;修改的内存单元的地址是2200:
00ff,2200:
00fe内容为30,f0
push[6];sp=00fc;修改的内存单元的地址是2200:
00fd,2200:
00fc内容为2c,31
1、写入内存
2、逐条执行
(2)使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。
(逐条执行,每条指令执行结果截图)如果有问题请说明原因
汇编指令
movax,1000H
movds,ax
movds,[0]
addds,ax
输入后
原因:
段寄存器不可用在算术指令中。
(3)仔细观察下图中的实验过程,然后分析:
为什么2000:
0~2000:
f中的内容会发生改变?
Debug执行单步中断处理程序时栈的内容会发生改变。
【实验一补充】
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 掌握DEBUG 基本命令及其功能 掌握 DEBUG 基本 命令 及其 功能