Stack

Im Stack werden Informationen darüber gespeichert, wie eine Funktion aufgerufen wird, welche Parameter benötigt werden und wie sie zurückkehren soll, wenn dessen Ausführung abgeschlossen ist.

Der Stack besitzt eine First In, Last Out (FILO-)Struktur. Es werden Argumente auf den Stack geschoben (push) und entfernt (pop). Das ESP-Register bildet die Basis des Stackframes und das EBP-Register das Ende.

Ein Funktionsaufruf in C
int bilde_farbwert(c_eins, c_zwei, c_drei);

würde wie folgt in x86-Assembler aussehen:

push c_drei
push c_zwei
push c_eins
call bilde_farbwert

Leave a comment

Your comment