博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实验五
阅读量:5877 次
发布时间:2019-06-19

本文共 653 字,大约阅读时间需要 2 分钟。

1编辑,编译,连接。用debug加载,跟踪

u命令查看,用g命令将程序运行到0076c:001D处即程序返回前:

 

得知cs=076c,ss=076b,ds=076a(2)

d命令查看数据段的内部内容,得知data数据未变还是0123h,0456h。。。。0987h。(1)

程序加载后code段地址为X,则data段地址为X-2,stack段地址为X-1。(3)

 

2、同1直接跳到mov ax 4c00h代码处即程序返回前:

 

(1)数据不变还是0123h,0456h

(2)cs=076c,ss=076b,ds=076a。

(3)若code段段地址为X,则data段段地址为X-2,stack段段地址X-1。

(4)实际占有16*((N+15)/16)((N+15)/16取整)

3、同上

 

(1)数据不变还是0123h,0456h

(2)cs=076A,ss=076e,ds=076d。

(3)若code段段地址为X,则data段段地址为X+3,stack段段地址X+4。

4、前两个不能正常运行,因为程序入口默认为整个代码的第一行;第三个可以。

5、

 

实现了加法运算

6

可知b段的地址076c

push操作前后b段的内容。

总结:知道了没有标号(可写为“start”或其他任意字母)时程序入口默认为整个代码的第一行,,各个段的名称只是代号,一段内存空间的“别称”。复习了loop,【bx】的联合应用。

转载于:https://www.cnblogs.com/101whw/p/10022759.html

你可能感兴趣的文章
C++中的对象的赋值和复制
查看>>
Python day2
查看>>
当我们谈论CloudTable时究竟在谈论什么?
查看>>
map和flatMap
查看>>
Vue2.0 vue-source.js jsonp demo vue跨域请求
查看>>
CF865D Buy Low Sell High
查看>>
解决页面使用ifrmae后,在session失效后登录页面在子页面中显示(子窗体出现父窗体)...
查看>>
例子:两个列表之间移动数据
查看>>
EF Core反向导航属性解决多对一关系
查看>>
数据流图试题
查看>>
多媒体基础-试题01
查看>>
Tesseract-ocr c#文字识别简单入门
查看>>
得到CPU 及硬盘序列号(网友给的,未证实)
查看>>
js-图片img转base64格式
查看>>
各种开源资料汇总
查看>>
RequireJs加载Codemirror,配合AngularJS的坑
查看>>
技术跟产品杂谈
查看>>
eclipse中文乱码问题解决方案
查看>>
事件处理程序
查看>>
Sublime Text 3使用手册
查看>>