2012-11-19 62 views
1

在C++的情況下,有ISO文件和關於該語言未來和現在定義草稿的「社區」論文。X86和ARM彙編的參考文檔是什麼?

X86和ARM平臺的裝配體的等效源是什麼?

我發現真的很難跟上程序集,因爲它真的是碎片化的(甚至只考慮X86平臺),並且在很多情況下,我甚至無法找出X引用的寄存器,或者哪些CPU集支持該功能或註冊。

沒有所有寄存器的索引,不是嗎?

+3

可能重複http://stackoverflow.com/questions/4568848/good-reference-for-x86 - 裝配的指令)。每個製造商都記錄自己的芯片。 –

+1

如果您想要等同於ISO標準,請在製造商文檔和manuels上進行。對於x86,請看Intel 64和IA-32架構軟件開發人員的Manuel。 – Linuxios

回答

3

正如評論中提到的那樣,您的問題的答案很複雜,因爲製造商爲他們的處理器生產手冊。此外,x86更加複雜,因爲通常有32位和64位處理器的單獨文檔手冊(我對ARM的評論並不熟悉)。

英特爾的x86(32位和64位),可以在這裏找到:Intel® 64 and IA-32 Architectures Software Developer Manuals

AMD的x86文件:All processorsAMD64 Architecture and Software Manuals。這裏有很多資源,您可能需要根據您要查找的內容對其進行過濾。

ARM使得可用的參考手冊由ARM架構:ARM Architecture

[用於x86組裝說明良好參考](的
+0

我很驚訝地注意到沒有人提到操作系統是可能的變體,但實際上有時我會看到彙編代碼被簽名爲「僅限Linux」或「僅限Windows」類似的東西:是那些低級別的內核調用或與其無關的東西CPU和硬件寄存器? – user1824407

+0

在DOS,Windows,Linux等操作系統之間的界面各不相同(更瘋狂!)。這更多的是「彙編語言怎麼處理」的問題,而不是彙編語言本身(它沒有像C這樣的「標準」,等等。 )。每個彙編程序都可以自由使用它們自己的語法......而且它們是這樣的!什麼CPU?什麼彙編程序?什麼OS?你需要知道所有三個才能編寫彙編語言。 –