我一直在嘗試在我的linux操作系統上學習32位英特爾x86 nasm語法程序集,並且遇到了關於四個通用32位寄存器的問題。英特爾x86 32位寄存器混淆
從我一直思維,EAX是,本來是要用來與 16位的寄存器AX,其中又分爲啊(高8位)的32位寄存器,和人(低8位)。和ebx,ecx和edx一樣。
然而,在閱讀一篇快速文章之後,我變得有些困惑。
32位寄存器是由16位寄存器(又由兩個8位寄存器組成)和另外16位加上的嗎?
從我在Google上看到的結果來看,所有結果都是他們用來做的,而不是他們的實際構成。
完美的答案,謝謝你解釋'||'運算符,也用於將答案擴展到AMD64。 – JAW1025 2012-02-04 00:29:08
實際上有SP,BP,SI和DI,它們是ESP,EBP,ESI和EDI的低端部分,它們又與高32位組合,成爲x86_64中的RSP,RBP,RSI和RDI – 2014-01-25 16:04:25