汇编实验5

本次实验深入探讨了汇编语言中数据、代码、栈分别位于不同段的程序编写与调试,通过实验理解了多段汇编源程序在目标程序执行时的内存分配方式。实验包括了对教材内容的复习、实验程序框架的使用、debug调试过程的记录与分析,以及实验结论的总结。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、实验目的
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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值