汇编实验5

  • Post author:
  • Post category:其他


一、实验目的

1. 理解和掌握将数据、代码、栈放入不同段的程序的编写和调试

2. 理解具有多个段的汇编源程序对应的目标程序执行时,内存分配方式

二、实验准备

1. 结合第 6 章教材和课件,复习第 6 章内容

2. 复习第 3 章「栈」的知识

三、实验内容

教材 133 实验 5

ps:

1. 实验 5 相关提示见本文档最后一部分 「附:实验 5 提示&说明」 」

2. 为提高实验效率,我已将实验 5 的程序框架准备好,可以从课程公邮→文件中心→

实验文件夹,下载实验 5 程序框架。

四、实验结论

实验任务(1)~(4),直接在教材上填写实验后通过运行、调试观察到的结果,以及由此得

到的结论,以拍照或直接在博客中录入方式,给出填写的结论。对结论得出的过程及调试过

程的检查,采用随机抽点现场操作演示并回答的方式检查。

实验任务(5),要求在博客中给出如下内容:

1.过程:

debug:

结果:

可得data:23 01 56 89 07 bc 0a ef 0d ed 0f ba 0c 87 09

cs=076c, ss=076b,ds=076a

data段地址: x-2    stack段地址: x-1


2.主要步骤与实验一相同

debug过程:

结果:

data:23 01 56 04

cs=076c ss=076b ds=076a

data段段地址:x-2,stack段段地址:x-1

实际占有的空间为:((N+15)/16)*16

3.

过程:(可能是我操作不当?g命令老崩溃)

结果:

data:23 01 56 04

cs=076a ss=076e ds=076d

data段段地址:x+3,stack段段地址:x+4

4.

只有3能正确执行。因为1,2前端都是数据段,不指明开始段时会被当作代码段。

5.

源码:

过程:

前后对比,成功相加。

6.

源码:

结果:

五、总结与体会

这次实验更多,更复杂,我遇到的问题比以往都多,也学习了不少。

转载于:https://www.cnblogs.com/-scp507/p/10016232.html