在32位处理器上,假设栈顶指针寄存器的当前值为0×00FFFFE8,那么在执行完指令“pusheax”(eax为32位寄存器)后,栈指针的当前值为()。
- A.0×00FFFFE4
- B.0×00FFFFE6
- C.0×00FFFFEA
- D.0×00FFFFEC
正确答案及解析
正确答案
A
解析
“pusheax”是一条进栈指令,进栈时要先修改栈指针,32位数据占4个字节,存储器按字节编址,所以栈指针-4。
在32位处理器上,假设栈顶指针寄存器的当前值为0×00FFFFE8,那么在执行完指令“pusheax”(eax为32位寄存器)后,栈指针的当前值为()。
“pusheax”是一条进栈指令,进栈时要先修改栈指针,32位数据占4个字节,存储器按字节编址,所以栈指针-4。