Следующее изображение взято из википедии запись в стеке вызовов, и есть кое-что, что я не совсем понимаю:
Я думал, что указатель кадра, который хранится в регистре ebp, инициализируется как таковой в прологе *:
push ebp ; Preserve current frame pointer
mov ebp, esp ; Create new frame pointer pointing to current stack top
sub esp, 20 ; allocate 20 bytes worth of locals on stack.
Если это так, то не должен ли указатель кадра в изображении указывать после адреса возврата и до того, как он должен быть адресом предыдущего указателя кадра и до этого адреса возврата? Чего мне не хватает?
Спасибо!
* Взято из: Что такое базовый указатель и указатель стека? На что они указывают?