回 帖 发 新 帖 刷新版面

主题:内存的弱弱的问题.

听人说程序载入到内存中都是通过创建一个映射,将物理内存地址映射到逻辑地址上,所以我们用DEBUG或者OllyICE看到程序的地址都是一样的。
但如果这样的话,为什么在汇编语言中会出现通过一些操作将其他程序在内存中的内容改写的事情?比如我用mov 1000:0000 ax  这样的语句,再通过DEBUG看的时候,1000:0000中的内容的确变化了。
应该只有通过使用物理地址才能改写吧?

回复列表 (共2个回复)

沙发

LZ可以去了解一下逻辑地址和物理地址的映射方式、x86的工作模式和数据保护方式。某些意外的修改数据会被操作系统禁止的。

板凳

恩。。。这样啊。。。去找找...

我来回复

您尚未登录,请登录后再回复。点此登录或注册