最初,ESP 指的是内存的空白空间。
当我push 1之类的东西时,它会引用1的内存位置,还是下一个空白空间?
这是示例
push ebp
mov ebp, esp
/*
---------
(empty space) <- esp, ebp
---------
ebp (initially stack pointer was here)
---------
*/
另一个问题是,当我做一个空的堆栈空间时,ESP会指向哪个点?
这是示例:(每个内存位置为 4 个字节)
/*
--------
1 <- initial esp
--------
*/
sub esp, 12
; now esp points to this one
/*
--------
4 <- esp
--------
3
--------
2
--------
1
--------
*/
; or this one
/*
--------
3 <- esp
--------
2
--------
1
--------
*/
假设数字是内存位置地址