6
ESP = ? stack pointer

E在这里代表什么?

更新

64位的RSP?

这里是什么R意思?

4

4 回答 4

16

E代表Extended

随着 32 位 80386 处理器的出现,16 位通用寄存器、基址寄存器、索引寄存器、指令指针和 FLAGS 寄存器,而不是段寄存器,被扩展为 32 位。这通过在 x86 汇编语言中的寄存器名称前加上“E”(表示扩展)来表示。

资源

于 2010-03-29T11:08:28.877 回答
4

R 仅用于“寄存器”,新寄存器仅称为 r8-r15。由于旧版本的扩展版本也需要名称,因此 e 只是交换为 r。

于 2010-03-29T18:15:22.567 回答
1

也许是为了与其他 32 位寄存器保持一致:EAXEBX

对于那些,E意味着“扩展” - 即到 32 位(16 位版本称为AXBX

PS 根据The Free DictionaryESP代表扩展堆栈指针。

于 2010-03-29T11:08:52.913 回答
0

E 表示扩展。如果你有 16 位的 SP,那么 ESP 应该是 32 位的。

于 2010-03-29T11:10:06.610 回答