洗脚水煮饺子 发表于 2012-5-8 21:43:02

32位处理器寻址机制

32微处理器取消了段地址,可以直接使用偏移地址来寻址,但是他是如何寻址的呢???能举个汇编例子嘛谢谢各位!.不用段地址加偏移地址,那么如何寻址?

寂静的风之力 发表于 2012-5-8 21:43:03

你这是在考虑操作系统考虑的问题了,在保护模式下,内存都是操作系统管理,程序可以完整的访问自己的4GB地址空间,当然有一部分被操作系统用了,windows下只能使用2GB。

现在的CPU都是64位把,在32位模式下,支持36位寻址,一个32位的CPU如何寻址36位呢?呵呵,32位的CPU遇到了和当年DOS一样的难题了!只不过不一样的是,没有什么段地址偏移地址了,程序依然只能使用4GB地址空间,4GB以上的部分是操作系统管理的。

目前,32位CPU可以寻址到36位,64位CPU可以寻址到40位。

至于操作系统是如何分页、如何映射的,这个太复杂了,我也看不懂,你自己去看Linux Kernel的源代码吧,等你学会的时候,给我们分享一下,大家一同进步。

小王子之歌 发表于 2012-5-8 23:20:13

......

16位寻址可以总结为 mov ax, ds:...32位只是更简单罢了...
mov eax,

消失在黑暗中 发表于 2012-5-9 14:21:07

本帖最后由 消失在黑暗中 于 2012-5-9 14:24 编辑

段地址变成了进程地址,只要知道进程地址就能获得程序的入口地址:D
看下这个函数readprocessmemory的参数就知道了
知道进程=知道内存

我认为操作系统用进程对我们的内存进行分段

楚门 发表于 2012-5-12 02:59:31

强烈建议楼主去看看罗云彬老师的《windows环境下32位汇编语言程序设计——第一章》,或者去看小甲鱼老师关于这本书的视频

Mr.han 发表于 2012-5-12 12:20:48

楚门 发表于 2012-5-12 02:59 static/image/common/back.gif
强烈建议楼主去看看罗云彬老师的《windows环境下32位汇编语言程序设计——第一章》,或者去看小甲鱼老师关于 ...

《windows环境下32位汇编语言程序设计》这本书 现在已经绝版了 :L

楚门 发表于 2012-5-12 16:23:49

Mr.han 发表于 2012-5-12 12:20 static/image/common/back.gif
《windows环境下32位汇编语言程序设计》这本书 现在已经绝版了

怎么会淘宝上那么多   

郑小夕 发表于 2012-5-12 16:58:10

Mr.han 发表于 2012-5-12 12:20 static/image/common/back.gif
《windows环境下32位汇编语言程序设计》这本书 现在已经绝版了

确实,很多 哥哥

Mr.han 发表于 2012-5-12 18:38:17

楚门 发表于 2012-5-12 16:23 static/image/common/back.gif
怎么会淘宝上那么多

淘宝上的都不是正版的 翻印的正版的前两年都不再印刷了

楚门 发表于 2012-5-12 18:39:35

Mr.han 发表于 2012-5-12 18:38 static/image/common/back.gif
淘宝上的都不是正版的 翻印的正版的前两年都不再印刷了

呵呵有书就好了   最近我也买了一本实体书看的舒服一点

Mr.han 发表于 2012-5-12 18:41:58

楚门 发表于 2012-5-12 18:39 static/image/common/back.gif
呵呵有书就好了   最近我也买了一本实体书看的舒服一点

我昨天也刚买 也是淘宝买的翻印的

楚门 发表于 2012-5-12 18:47:14

Mr.han 发表于 2012-5-12 18:41 static/image/common/back.gif
我昨天也刚买 也是淘宝买的翻印的

呵呵   一起加油学

_作业 发表于 2012-5-23 17:48:44

段地址不在是实模式下的段地址,而成为段选择子了,前13是索引目录,全GDT中索引,
页: [1]
查看完整版本: 32位处理器寻址机制