Ebp, esp i stelaż w montażu z nasm
Mam kilka pytań dotyczących ebp, esp i ramki stosu w następującym kodzie.
Dlaczego odjęliśmy 28 z esp? W głównej mamy dwie lokalne zmienne x i y. Dlaczego więc nie odjęliśmy 8?
I czy nie umieszczamy wartości na stosie od prawej do lewej? Dlaczego więc dodaliśmy 1 do [eax + 8] zamiast [eax + 4]?
Jestem trochę zdezorientowany tą strukturą. Czy możesz mi pomóc? Dzięki.
func(int a, int b, int c)
{
return a+b+c;
}
main()
{
int x, y=3;
x=func(y,2,1);
}