昆明理工大学 汇编实验报告.docx
- 文档编号:8222784
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:17
- 大小:1.84MB
昆明理工大学 汇编实验报告.docx
《昆明理工大学 汇编实验报告.docx》由会员分享,可在线阅读,更多相关《昆明理工大学 汇编实验报告.docx(17页珍藏版)》请在冰豆网上搜索。
昆明理工大学汇编实验报告
信息工程及自动化学院
汇编语言试验报告
∙试验环境:
∙OS:
windows7ultimateX64
∙Tool:
DOSBOX0.74
目录
试验一2
(1)使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。
2
(2)将下面3条指令写入从2000:
0开始的内存单元中,利用这3条指令计算2的8次方。
9
(3)查看内存中的内容11
(4)向内存从B8100H开始的单元中填写数据,如:
11
试验二12
<1.>使用debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。
12
<2.>观察下图得出结论15
附录:
16
试验一
(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
<运行观察>运行前一次值:
1)4E20H→axCS:
IP0123:
0000
2)1416H+ax→axCS:
IP0123:
0003
3)2000H→bxCS:
IP0123:
0006
4)bx+ax→axCS:
IP0123:
0009
5)ax→bxCS:
IP0123:
000B
6)bx+ax→axCS:
IP0123:
000D
7)001AH→axCS:
IP0123:
000F
8)0021H→bxCS:
IP0123:
0012
9)al+bl→al(al=1AH,bl=21H)CS:
IP0123:
0015
10)ah+bl→ah(ah=00H,bl=21H)CS:
IP0123:
0017
11)bh+al→bh(bh=00H,al=3BH)CS:
IP0123:
0019
12)0→ahCS:
IP0123:
001B
13)al+bl→al(al=3BH,bl=21H)CS:
IP0123:
001D
14)al+9CH→alCS:
IP0123:
001F
CS:
IP0123:
0021
配图如下:
图1.1-1
图1.1-1:
dosboxv0.74对虚拟硬盘的挂载
图1.1-2
图1.1-2:
因为我们进入demo文件夹对于可执行程序来说文件夹在其下层,所以我们配置环境变量.为了方便我们调整cs为0123调整开始ip为0000;
图1.1-3
图1.1-3:
用e编写程序.
图1.1-4
图1.1-4:
总的编写展示.对于其间我们省略了一步截图.是对于再次读写位置的确定.我们根据程序定点为0123:
0015;
图1.1-5
图1.1-5:
单步执行不再赘述.
图1.1-6
图1.1-7
图1.1-8
图1.1-9
图1.1-9:
采用a编写程序.指定开始位置.
图1.1-10
图1.1-11
图1.1-12
图1.1-13
(2)将下面3条指令写入从2000:
0开始的内存单元中,利用这3条指令计算2的8次方。
〈程序〉
movax,1
addax,ax
jmp2000:
0003
图1.2-1
图1.2-2
图1.2-3
<运行观察>
第一条指令给ax赋值。
第二条指令让ax相加,相当于乘2。
第三条跳转上一条指令
连续跳转8八次,就是2的八次方
(3)查看内存中的内容
PC机主板上的ROM中写有一个生产日期,在内存FFF00H~FFFFFH的某几个单元中,请找到这个生产日期并试图改变它。
图1.3-1
<运行观察>
因为物理地址=段地址*16+段内地址
内存FFF00H~FFFFFH在计算机FFFF:
0000~FFF0:
000F中
运用dFFFF:
0000指令查看内存的地址
改不了.
(4)向内存从B8100H开始的单元中填写数据,如:
-eB810:
00000101020203030404
此试验我参看了多方资料.最后得出结论在b800以后几个内存空间是显存位置.对于编写程序用E读写开始第一位是设置字符,后一位是颜色.我们通过颜色表对比得出选择的颜色.又知道在一页显示缓冲区中:
偏移000~09F对应显示器上的第1行(80个字符占160个字节):
偏移0A0~13F对应显示器上的第2行:
偏移140~1DF对应显示器上的第3行。
所以很好确定我们显示的位置.具体资料见附录.
图1.4-1
试验二
<1.>使用debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。
movax,ffff
movds,ax
movax,2200
movss,ax
movsp,0100
movax,[0]ax=_C0EA_____
addax,[2]ax=_0000_____
movbx,[4]bx=_30F0____
addbx,[6]bx=_6021____
pushaxsp=_00FE____;修改的内存单元地址是_2200:
00FE____内容为_____
pushbxsp=_00FC____,修改的内存单元地址是_2200:
00FC____内容_____
popaxsp=_00FE____,ax=_6021____
popbxsp=_0100____,bx=_C0FC____
push[4]sp=_00FE____修改的内存单元地址是_2200:
00FE____内容_30F0____
push[6]sp=_00FC____修改的内存单元地址是_2200:
00FC____内容_2F31____
图2.1-1
图2.1-2
图2.1-3
图2.1-4
图2.1-5
<2.>观察下图得出结论
因为用T指令进行调试时,会产生中断。
而为了保护现场,CPU则先将标志寄存器进栈、再把当前CS的值进栈,最后将IP的值进栈。
附录:
1.背景色显示表
前一位数字表示背景色,后一个字母则为前景。
每个数字可以为以下任何值之一:
0=黑色1=蓝色2=绿色3=湖蓝色4=红色5=紫色6=黄色
7=白色8=灰色9=淡蓝色A=淡绿色B=淡浅绿色C=淡红色
D=淡紫色E=淡黄色F=亮白色
2.ascll码表
由于内容过多不再赘述.
====================================End=======================================
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 昆明理工大学 汇编实验报告 昆明 理工大学 汇编 实验 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)