Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
Turbo Delphi für Win32
|
Re: Stack Überlauf
20. Feb 2007, 20:02
Schön deutlich wird das, sobald du mal einen Emulator schreibst, so wie ich das mache. Bei Chip8 beispielsweise wird der Stack ausschließlich für das Speichern der Rücksprungadressen benutzt, damit ich weiß, wohin ich muss, sobald eine Funktion zu Ende ist.
jedesmal wenn eine Funktion aufgerufen wird, speichert man die Adresse auf den Stack und setzt den Stackpointer ein Element weiter. Da man allerdings nicht unendlich Platz hat, stößt dieser irgendwann an seine grenzen, wenn zuviele Funktionen aufgerufen werden. Dann krachts. Kompliziertere hngegen verwenden den Stack außerdem für andere Sachen zusätzlich.
Nikolai Wyderka
SWIM SWIM HUNGRY!
Neuer Blog: hier!
|