英特尔堆栈指针是指向最新项目还是下一项?

时间:2016-03-02 09:39:54

标签: assembly intel

%esp是指向堆栈上的当前项目还是下一个PUSH指令将使用的空闲地址?

1 个答案:

答案 0 :(得分:3)

英特尔手册中PUSH的说明非常清楚:

ESP  ← ESP – 4;
Memory[SS:ESP]  ← SRC;

正如您所看到的,堆栈指针是预先递减的,因此在PUSH之后,堆栈指针将指向您刚刚推送的值。