Assembly 堆栈指针作为索引寄存器
为什么堆栈指针(esp/rsp)不能用作索引寄存器,如Assembly 堆栈指针作为索引寄存器,assembly,x86,cpu-registers,machine-code,addressing-mode,Assembly,X86,Cpu Registers,Machine Code,Addressing Mode,为什么堆栈指针(esp/rsp)不能用作索引寄存器,如[esi+esp*4]?指令集就是这样生成的。ESP(即100b)的SIB编码被用来表示none,而不是1。通常情况下,ESP是堆栈指针,因此用作基址寄存器,它具有有效的编码。用任何因素来扩展它通常是没有意义的,因此牺牲这种编码通常不是问题 见表2-3。带SIB字节的32位寻址表单 指令集就是这样制作的。ESP(即100b)的SIB编码被用来表示none,而不是1。通常情况下,ESP是堆栈指针,因此用作基址寄存器,它具有有效的编码。用任何因
[esi+esp*4]
?指令集就是这样生成的。ESP
(即100b
)的SIB编码被用来表示none
,而不是1。通常情况下,ESP
是堆栈指针,因此用作基址寄存器,它具有有效的编码。用任何因素来扩展它通常是没有意义的,因此牺牲这种编码通常不是问题
指令集就是这样制作的。
ESP
(即100b
)的SIB编码被用来表示none
,而不是1。通常情况下,ESP
是堆栈指针,因此用作基址寄存器,它具有有效的编码。用任何因素来扩展它通常是没有意义的,因此牺牲这种编码通常不是问题
指令集就是这样制作的。
ESP
(即100b
)的SIB编码被用来表示none
,而不是1。通常情况下,ESP
是堆栈指针,因此用作基址寄存器,它具有有效的编码。用任何因素来扩展它通常是没有意义的,因此牺牲这种编码通常不是问题
指令集就是这样制作的。
ESP
(即100b
)的SIB编码被用来表示none
,而不是1。通常情况下,ESP
是堆栈指针,因此用作基址寄存器,它具有有效的编码。用任何因素来扩展它通常是没有意义的,因此牺牲这种编码通常不是问题