码迷,mamicode.com
首页 > 其他好文 > 详细

实验三

时间:2018-11-17 16:13:25      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:观察   汇编   多少   个数   记事本   line   体会   .exe   关系   

练习1:

一:用记事本编写文件1.asm

技术分享图片

二:对文件1.asm 进行汇编,连接,运行,调试

技术分享图片

发现运行出来的结果是36。

三:将 line4和line9中dl 的值分别修改为 0~9 中任何一个数字,重新汇编, 连接,运行,观察结果的变化。

技术分享图片

此处改的数值分别为1,1

技术分享图片

象上面一样进行汇编, 连接,运行,发现结果确实为11。

四:用debug对生成的可执行文件 1.exe 进行调试

1.使用r命令查看寄存器中cs和ds的值为多少,它们之间是否满足关系cs=ds+10H? 

技术分享图片

发现cs=15D9,ds=19C9,满足cs=ds+10H。

2.PSP(程序段前缀)的头两个字节是CD 20, 用debug查看PSP的内容,验证是否如此。

技术分享图片

发现确实为CD 20。

3.使用u命令对1.exe进行反汇编,观察反汇编得到的源代码。

技术分享图片

4.使用 t 命令和 p 命令(遇到 int 命令时,用 p 命令)单步调试,观察结果

技术分享图片

技术分享图片

发现在-p后面出现了3,6,即之前运行程序所出现的结果。

 

练习2:

一:按照实验要求编写源代码2.asm。

技术分享图片

二:对源程序2.asm进行汇编,连接,运行,调试,观察程序运行结果,验证是否在屏幕左上方出现红色的数值36

编译过程与上面一致,不截图显示了

技术分享图片

清屏之后发现确实显示了红色的36。

三:将源代码中line7的0433h→0432h, line10 的 0436h→0439h, 然后重新汇编、连接,得到可执行文件2.exe。使用cls命令清屏后,再次观察程序运行结果

技术分享图片

技术分享图片

发现数字变成了红色的29。

四:将源代码中line7的0433h→0333h, line10 的 0436h→0336h, 然后重新汇编、连接,得到可执行文件2.exe。使用 cls 命令清 屏后,再次观察程序运行结果

技术分享图片

技术分享图片

发现数字变成了蓝绿色的36。

 

实验总结与体会:

通过这两个实验的实践过程,我学会了如何编写,编译,连接一个程序以及使用dosbox运行这个程序,并且我学会了使用debug逐步调试程序中的每一步。还有,在mov中不同的数值代表着不同的颜色和数字,这在以后的学习中我还要深入研究。

 

实验三

标签:观察   汇编   多少   个数   记事本   line   体会   .exe   关系   

原文地址:https://www.cnblogs.com/daiyang/p/9973710.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!