实验三

Posted gares

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验三相关的知识,希望对你有一定的参考价值。

练习一

编写汇编源程序t1.asm

输入edit,并输入源程序代码

 

 

技术分享图片

进行改值操作

技术分享图片

如图所示,对程序进行汇编、连接、运行

结果为36

 

技术分享图片

line4与line9的mov dl,3和mov dl,6分别改为mov dl,9和mov dl,8

输出结果为98

 

技术分享图片

r命令查看,cx值为0016

ds值为075A,cs值为076A,满(cs)=(ds)+10H

d命令查看ds:0,头两个字节为CD 20

 

技术分享图片

u命令对t1进行反汇编

 

技术分享图片

t命令进行单步执行,遇到int则用p命令

 

 

 

练习二

技术分享图片

edit输入源代码

对源程序进行汇编、连接、运行

结果为红色的36

 

技术分享图片

对源程序进行修改,将源代码中line7的0433h改为0432h, line10 的 0436h改为0439h

进行汇编、连接、运行

结果为红色的29

 

技术分享图片

对源程序进行修改,将源代码中line7的0433h改为0333h, line10 的 0436h改为0336h

进行汇编、连接、运行

结果为蓝色的36

 

 

 

 

 

延伸思考和分析

1.本实验的练习二和实验一中的第四题都是通过改变值使输出结果发生变化。实验一中的第四题修改的内存地址为b810:0000,本实验中是先将0b800h赋给ax,在用as给ds赋值,用ds寄存该地址。

本实验的练习二中先将line7的0433h改为0432h, line10 的 0436h改为0439h,只有低位发生了变化,改变了最后输出的值的大小,后又将源代码中line7的0433h改为0333h, line10 的 0436h改为0336h,只有高位发生了变化,改变了最后输出值的颜色

结论:低位改变值大小,高位改变值颜色

2.本实验中的练习一和练习二都是将值进行输出,但是输出的方式有所不同

 

 

 

 

 

总结与体会

1.在单步执行时,遇到int需要使用p命令

2.在dosbox中,当debug x.exe后可能会显示不出来,需要cls(将页面内容清空)才可以显示出来

3.通过该实验,我更加清晰地了解了汇编、连接、运行、调试这几步的具体内容

 

以上是关于实验三的主要内容,如果未能解决你的问题,请参考以下文章

实验六报告

实验三

实验三

实验三

实验7

[汇编语言]实验三:栈和栈段