实验五 编写、调试具有多个段的程序

(1)将下面的程序编译、连接,用Debug加载、跟踪,然后回答问题。

①CPU执行程序,程序返回前,data段的数据为多少?

见下图d 0770:0000 000f结果。

②CPU执行程序,程序返回前,cs= 0772h 、ss=  0771h  、ds= 0770 h  

③设程序加载后,code段的段地址为X,则data段的段地址为 X-2  、stack段的段地址为     X-1 

code段是代码段,段地址存放在寄存器cs中,data段是数据段,段地址存放在ds中,stack是栈段,段地址存在ss中。

(2)将下面的程序编译、连接,用Debug加载、跟踪,然后回答问题。

①CPU执行程序,程序返回前,data段的数据为多少?

见下图中0770:0000 0003结果。

②CPU执行程序,程序返回前,cs=  0772h    、ss=  0771h   、ds=  0770h   

③设程序加载后,code段的段地址为X,则data段的段地址为  X-2    、stack段的段地址为  X-1   

④对于如下定义的段:

name  segment

.........

name ends

如果段中的数据占N个字节,则程序加载后,该段实际占有的空间为  (N/16+1)*16    。

(3)将下面的程序编译、连接,用Debug加载、跟踪,然后回答问题。

①CPU执行程序,程序返回前,data段的数据为多少?

见下图中的d 0773:0000 0003运行结果。

②CPU执行程序,程序返回前,cs=0770h、ss= 0774h  、ds=0773h 

③设程序加载后,code段的段地址为X,则data段的段地址为 X+3  、stack段的段地址为  X+4 

 

(4)如果将(1)、(2)、(3)题中的最后一条伪指令“end start”改为“end”(也就是说,不指明程序的入口),则哪个程序仍然可以正确执行?说出原因。

(为了方便验证结果,我将pop ds:[2]和pop ds:[0]语句删去首先,(1)未改之前:

程序(1)改后:

 

用r和t命令找到现在的SS,然后用g命令使程序运行结束,发现改变前后SS发生变化。

 

程序能够运行,但不能正确执行。

程序(2)改变前:

程序(2)改变后:

 

能运行,但不能正确执行。SS的值变成了20CD。

程序(3)改变前:

 

 程序(3)改变后:

 

 

 能够运行且执行正确。

(1)和(2)都改变了原来SS的值。

(5)程序如下,编写code段中的代码,将a段和b段中的数据依次相加,将结果存放到c段中。

 

 

结果正确相加。

这道题编写了好一会,一直是执行g命令后无响应,还以为是编的太复杂了改了好几遍,最后发现是AX赋值成了004C。。。。

(6)程序如下,编写code段中的代码,用push指令将a段中的前8个字型数据,逆序存储到b段中。

 

 

转载于:https://www.cnblogs.com/Yangruzhang/p/10007587.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/366530.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

手机工商银行怎么转账_工商银行信用卡要哪些申请条件?想成功办理你需要了解这些!...

工商银行信用卡一直是卡友们热议的对象,也有不少卡友问过小白:工商银行信用卡怎么办理?要哪些条件?要等多长时间?那么今天小白就为大家详细的讲解一下工商银行信用卡申请的各种方法和技巧,希望对大家有帮助…

数据可视化的基本原理——视觉通道

数据可视化为了达到增强人脑认知的目的,会利用不同的视觉通道对冰冷的数据进行视觉编码。 我们在数据可视化的时候,一方面,展现可视化对象本身的位置、特性,对应的视觉通道类型是定性或者分类,比如汽车在什么地方、汽…

linux测试地址是否能访问_一个小测试能看出孩子注意力是否集中,提前弥补,上小学会很轻松...

文|秘籍君不少家长虽然重视孩子的教育,却总是习惯“临阵磨枪”,具体体现在:孩子在上幼儿园的前一两个月才开始着急,害怕孩子适应不了幼儿园;孩子上了大班才开始重视“幼小衔接”,却不知道,从孩子…

服务器怎么禁止iis静态文件,如何禁止IIS缓存静态文件

禁止IIS缓存静态文件(png、js、html等)背景:IIS为了提高性能,默认情况下会对静态文件js、html、gif、png等做内部缓存,这个缓存是在服务器iis进程的内存中的。IIS这么做在很大程度上可以提高静态文件的访问性能,在正常情况下只要静…

汇编实验五

一、 二、 三、 四、 第一个 反汇编后发现不行 第二个 发现也不行 第三个 发现代码正确 五、 编写代码如下 调试后查看内存,发现数据相加了 六、 编写代码如下 发现逆序存储成功 七、实验总结 对于代码段的使用有了更加深入的了解。 但是对于代码段内存这块还是不懂…

eclipse RTC下载的代码无android sdk

问题现象: 修复过程: 1.无ADT,安装ADT(FQ操作) https://dl-ssl.google.com/android/eclipse/ a图 b图 2.下载android sdk a.下载 3.应用到eclipse中去 转载于:https://www.cnblogs.com/liuyj-vv/p/9299913.html

亚马逊免费使用套餐:在EC2 Linux实例上安装Tomcat 7

Amazon Web Services提供了12个月的免费使用期限,使开发人员可以在云中运行任何他们想要的东西。 免费层包括14个服务,其中Web开发人员最关注EC2服务。 EC2是一项服务,通过停止和启动Windows和/或Linux的虚拟实例来提供可调整大小的虚拟计算。…

笔记:隐式转换规则

学习并背诵全文 原始值 类型UndefinedNullStringBooleanNumber值undefinednull所有字符串true false所有数字/NaN 引用类型 Object的成员叫对象,包括Array,Function,Math,Date,JSON,RegExp等除了原始值…

ble连接过程建立_九点之蓝牙连接

蓝牙连接蓝牙连接是如何进入到连接状态呢,首先必须经历前面提到的广播阶段,主端通过扫描到从端的广播来发现这个设备,之后让主端发出连接请求来要求与从端建立连接,便可以进入到连接状态。由于蓝牙连接牵涉的点比较多,…

华为服务器系统蓝屏,服务器主机蓝屏

服务器主机蓝屏 内容精选换一换云服务器创建后区域固定,不能将云服务器转移到另一个区域,也不能将云服务器转移到另一个帐号。您可以通过镜像迁移方式实现云服务器的跨帐号跨区域迁移。服务器迁移的常见场景与常用的迁移方式请参考常见的服务器迁移场景。…

多对一映射、一对多映射

Emp员工表 Dept部门表 多对一映射 在查询时,需要获取两张以上关联表的数据,通过关联映射,可以由一个对象获取关联对象的信息,例如:查询一个Emp员工对象,可以 通过关联映射获取员工所在的部门Dept对象信息 …

一道面试题目引发的思考

起因 多列布局是前端一个经典的反复被提及的面试题目,最典型的即两列,左列定宽菜单栏,右列变宽为内容区域。 通常得到的答案无外乎左列浮动定宽,然后右列或浮动,或设置外边距,或绝对定位等等。偶尔会有面试…

uniapp弹出框_uniApp上拉刷新,下拉加载,以及筛选功能

uniApp插件市场有很多友好的插件,今天举一个例子如上图所示,实现上拉刷新,下来加载,右上角点击弹出筛选框,只需要在插件市场搜索刷新选择你想要的效果(也可以下载后自己改动效果)点击导入插件,会自动打开项…

乐高无限的服务器怎么建,乐高无限悬空房子怎么建造 建造方法介绍

乐高无限悬空房子怎么建造?很多玩家对此还不是很清楚,下面给大家带来乐高无限悬空房子建造方法,还不知道怎么建造的朋友一起来看看吧!建造方法悬空房子非常容易搭建,如果我们想要将已经搭建的房子悬空,就只需要将建筑下方的土地挖…

Hibernate学习(一)

搭建环境 1、创建普通的Java工程 2、添加相应的jar包,下载链接:https://files.cnblogs.com/files/AmyZheng/required.rar 第一个实例 1、引用jar包 2、创建数据库和表 DROP TABLE IF EXISTS t_customer ;CREATE TABLE t_customer (id INT(5) PRIMARY KE…

使用Spring Webservices构建SOAP Webservices代理模块

前一段时间,我想看看使用Spring Web Services编写Web服务代理(wsproxy)有多么容易。 所以,我想我会在Github上分享结果。 可以随意使用它 (Apache v2许可证)或将其用作自己开发的基础。 本文的其余部分将解…

joc杂志影响因子2019_排名 ‖ 2019年中国体育学期刊影响因子

近日,由中国科学文献计量评价研究中心、清华大学图书馆研制,《中国学术期刊(光盘版)》电子杂志社有限公司出版的《中国学术期刊影响因子年报》(2019版)发布。该年报是中国科学文献计量评价研究中心自2002年…

Confluence 6 MySQL 3.x 字符集编码问题

MySQL 3.x is 已知在大写和小写转换的时候有些问题(non-ASCII)。 问题诊断 请按照 Troubleshooting Character Encodings 页面中的内容对问题进行诊断。如果大小写字符串编码诊断显示不同,那么有可能是你数据库导致的。一个错误的数据库大小写…

手型向下 点击一下 福昕_PPT多张缩略图点击放大展示

↑点击上方“菜鸟PPT”关注,教你玩转PPT!多张图片单击放大展示,以前做过一个比较复杂的,在同一页PPT里面做,加了很多个“进入”和“退出”的动画,维护起来比较麻烦。今天,菜鸟菌跟大家一起来学习…

6个经典的JavaScript报错分析

代码报错是经常发生的一件事,我们要确定是什么原因造成的,以及如何避免错误。 1. Uncaught TypeError: Cannot read property 该错误说明没有某个属性,一般是该属性前面的值是undefined或者是null的情况会出现。 2. TypeError: ‘undefined…