鱼C论坛

 找回密码
 立即注册
查看: 7776|回复: 6

查看数据段内容时ds的值的问题

[复制链接]
发表于 2016-3-24 11:25:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
王爽老师的汇编书上4.9有讲的有关这个内容,就是说内存区有一段内存存放PSP的空间,所以程序的地址应该是:ds+10h:0,这里的程序的地址是指什么?程序的地址是不是cs:ip的指向?用d命令查看这不应该是数据段的数据吗?跟程序的入口有什么关系。。ds+10h和cs的值是否存在某种联系。。?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-3-25 18:01:54 | 显示全部楼层
本帖最后由 兰陵月 于 2016-3-25 18:04 编辑

以书上的那个例子来说,程序的第一条指令地址就是CS:IP指向的地址。

用D命令查看到的是PSP,这个书上已经明说了是DOS系统创建的,真正有用的从其后100H(256字节)的地方开始的。

ds+10H和CS是否存在某种联系?没有固定的某种联系,硬要看成有联系那就过了或者有联系,但是找出联系的意义不大或者说根本就没意义。

比如说:程序入口处的前面放有数据段定义区、放有栈段定义区,有或数据段、栈段放在code段的后面,这样CS出来的结果都是不一样的。从硬件上去理解,它们就是一个线性空间。

评分

参与人数 1荣誉 +3 鱼币 +10 收起 理由
~风介~ + 3 + 10 感谢楼主无私奉献!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-3-26 09:53:21 | 显示全部楼层
ds是程序载入内存的地址,psp是后面的一段我们现在暂时不用理解的信息,真正的程序代码是从cs哪里开始的,也就是ds+10H的地址。 (cs=ds+10H)
我也是刚看2个星期的书,可能说的不对,仅供参考。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-3-26 11:51:41 | 显示全部楼层
兰陵月 发表于 2016-3-25 18:01
以书上的那个例子来说,程序的第一条指令地址就是CS:IP指向的地址。

用D命令查看到的是PSP,这个书上已 ...

感谢回复,还有一个问题
捕获.PNG
捕获.PNG
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-3-26 17:56:50 | 显示全部楼层
兰陵月 发表于 2016-3-25 18:01
以书上的那个例子来说,程序的第一条指令地址就是CS:IP指向的地址。

用D命令查看到的是PSP,这个书上已 ...

咦大神有看到我的提问吗就是看我贴的那个图啊,为什么用ds+10查看内存的值显示是没有内容的,相反数据是存在ds:00这段内存的,这与psp这段空间的存在性是否有出入呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-3-26 18:31:14 | 显示全部楼层
hack88 发表于 2016-3-26 09:53
ds是程序载入内存的地址,psp是后面的一段我们现在暂时不用理解的信息,真正的程序代码是从cs哪里开始的, ...

嘻嘻发现cs和ds没有必然关系呢!一起学习~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-3-27 09:36:54 | 显示全部楼层
乍泄1996 发表于 2016-3-26 17:56
咦大神有看到我的提问吗就是看我贴的那个图啊,为什么用ds+10查看内存的值显示是没有内容的,相 ...

图中显示你的传送CS:IP为077C:000B,而那个位置貌似都是0000等无意义数据。你要把你DEBUG的程序贴出来才知道。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-26 13:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表