Изначально ESP относится к пустому пространству памяти.
Когда я нажимаю что-то, например, нажатие 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
--------
*/
Предположим, что числа являются адресами ячейки памяти