Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: bscreator am 15. July 2004, 11:02

Titel: Stack
Beitrag von: bscreator am 15. July 2004, 11:02
Hi Leute,
 
Hab ne Frage wegen dem Stack:
Nehmen wir mal an, dass man schon zig Elemente auf dem Stack ausgelagert hat. Nun setzt man den Stackpointer auf 0 (SP). Wird dann das Element 0 des Stacks durch überschreiben (mit einem anderen Wert) gelöscht, oder wird der zu pushende Wert trotzdem an das Stackende angehängt ?

mfg,
bscreator
Titel: Stack
Beitrag von: GhostCoder am 15. July 2004, 11:47
Hiho,

natürlich wird der Wert überschrieben, die CPU ja nicht mehr wissen kann, wo das eigentliche Stackende ist, außerdem läuft der Stack von oben nach unten, also kriegst du, wenn du den sp auf null setzt nen überlauf(also, eigentlich unterlauf :) ).

Push:
sp--
sp=wert

Pop:
sp=wert
sp++

MFG GhostCoder
Titel: Stack
Beitrag von: bscreator am 15. July 2004, 18:56
Stimmt ja, der wächst von oben nach unten. Danke GhostCoder