lrcode 发表于 2014-1-14 22:50:15

同样的物理地址为什么数据不一样你能回答上来算你本事


是不是因为是虚拟的才数据不一样


asd2881323 发表于 2014-1-14 23:10:30

你前面不是用P执行完了返回调用指令吗,而右边那图是刚开始执行一段代码,其对应的数据肯定会不一样。

dlzhwm 发表于 2014-1-14 23:59:59

前图为1.EXE运行前的数据,后图为运行到13D6:0020处指令时的数据。相同物理地址内存内容已被1.EXE程序修改了几个字节当然不一样。
楼主求助问题的标题说明心态不平和。学习知识不应如此。:dizzy:

lrcode 发表于 2014-1-15 09:22:59

首先谢谢楼上三位的回答。第一次发帖,悬赏还不会用呢。下次一定补上。
另外解释一下,有挑衅,是吸引眼球,怕没人关注我的问题。
问题
   注: 两个程序是同一个程序
   运行第一个程序后,内存里的数据被改写了 。
   第二次运行程序,前面的没有退出,数据也被改写了
   返回到一个程序查看数据,数据应该被第二次运行改写才对
   为什么第一个程序里面的数据没有被改写
   百思不得其解

小名明SIU 发表于 2014-1-15 12:16:04

在windows平台下同时打开多个dos程序,地址分别映射到不同的1MB地址空间,两个程序虽然表面的地址是一样的,但是对应的物理地址是不同的,所以互不影响。

小名明SIU 发表于 2014-1-15 12:18:43

这个就是在保护模式运行DOS程序,采用的是虚86模式,你可以参考相关书籍,在罗云彬的琢石成器这本书的开头有说过

小名明SIU 发表于 2014-1-15 12:42:24

补充一下,你的提问方式让人很不爽

lrcode 发表于 2014-1-15 13:54:08

淡定淡定。楼上的是正解。

j28640266 发表于 2014-1-15 18:02:03

{:1_1:}......................

lrcode 发表于 2014-2-8 19:55:26

自个的帖子到首页了,恭喜恭喜

无名侠 发表于 2014-2-8 20:19:51

lrcode 发表于 2014-1-15 09:22 static/image/common/back.gif
首先谢谢楼上三位的回答。第一次发帖,悬赏还不会用呢。下次一定补上。
另外解释一下,有挑衅,是吸引眼球 ...

Dos程序在Windows下也是一个进程,Windows的进程都是独立,他们都有独立的4GB线性地址,就像你开两个CMD,可以执行不同的命令一样。

故乡的风 发表于 2014-2-8 20:23:11

lrcode 发表于 2014-1-15 09:22 static/image/common/back.gif
首先谢谢楼上三位的回答。第一次发帖,悬赏还不会用呢。下次一定补上。
另外解释一下,有挑衅,是吸引眼球 ...

了解下操作系统相关知识,你就知道了。这个涉及到进程和虚拟内存的相关内容。

lrcode 发表于 2014-2-8 21:53:47

谢谢楼上两位的回答。继续努力学习
页: [1]
查看完整版本: 同样的物理地址为什么数据不一样你能回答上来算你本事