2013-04-23 44 views
1

我正在使用稱爲Cheat Engine的內存編輯應用程序。我將Cheat Engine附加到遊戲中。在我的遊戲中,我有一個稱爲HP的32位整數。 HP存儲在內存地址A處。如果我重新啓動遊戲,HP將存儲在新的內存地址B中。似乎使用Cheat Engine,我可以執行指針掃描並找到一個靜態內存地址C,該靜態內存地址始終存儲惠普在該會議期間的內存地址。所以如果我解引用C,我總是得到存儲HP的內存地址。總是保證C始終是相同的內存地址?如果另一個應用程序啓動並佔用該區域的內存呢?應用程序如何具有靜態內存地址?

+0

我不記得有足夠的細節發佈真正的答案,但我記得有關尋址內存相對於內存中進程的位置的內容。指針不是相對於RAM中的第0個字節,而是從進程開始的地方。 – 2013-04-23 16:02:35

回答

2

我不知道你在用什麼操作系統,但是大多數現代操作系統在每個進程中都使用虛擬內存。每個程序的內存地址可能相同。操作系統和計算機將虛擬地址映射到RAM中的實際地址。

+0

以防萬一:我使用Windows 8 64位。 – user2312080 2013-04-23 16:02:10

+0

另外,謝謝你清理。這更有意義。不知道虛擬內存是否存在。 – user2312080 2013-04-23 16:02:47

+1

HP的地址相對於進程的虛擬內存塊的開始。 – allonhadaya 2013-04-23 16:02:58

相關問題