2012-01-07 49 views
-1

在某些應用程序中,我曾經在可執行文件中「更改」某些內容,需要在開始時使用0x的正確地址。例如:0x2FF0C40x開頭的地址

問題是,這些地址是什麼,我怎樣才能得到它們?

在創建這個問題之前,我搜索了很多,但搜索引擎中的address短語提供了大量的記錄,因爲我不知道方式,我該如何'命名'它。

我想這是某種內存地址?

+8

'0x'表示[十六進制](http://en.wikipedia.org/wiki/Hexadecimal) – 2012-01-07 08:47:23

回答

0

不能擊敗Rouhani的答案很簡單,但這裏的內存地址的多一點信息:

計算機上的「地址」通常被認爲是「內存地址」標識的RAM位置。按照慣例,RAM上的位置用十六進制表示,因爲它們通常以兩個冪(即兩個頁面)的冪來遇到;因此,用十六進制算術更容易。

編輯:我意識到你回答了你自己的問題。

+0

謝謝。這就是我期待的答案:)。你能否也請告訴我,如何搜索一個地址是否存在於可執行文件中? – Cyclone 2012-01-07 08:59:45

+0

@Cyclone這是個詭計的問題。所有地址都在每個可執行文件上當你運行一個可執行文件時,爲它們創建一個虛擬地址空間。它是「虛擬的」,因爲它不是直接映射到整個連續的物理內存塊。整個主題屬於超出評論範圍的內存架構。有關更多信息,請參閱http://en.wikipedia.org/wiki/Virtual_memory。 – 2012-01-07 09:06:35

+0

是的,我明白這一點。但是我得到一個可執行文件,並且有一個'0x2FF0C4'地址,所以我怎麼能找到這個地址(在十六進制編輯器中,也許?)來看看,這是什麼? – Cyclone 2012-01-07 09:26:02