我一直在尝试在我的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