Witam.
Pytanie tak jak w temacie. Na co w końcu on wskazuje?
Jedni mówią że na ostatni element stosu, inni zaś że na pierwszy wolny element na stosie. Już się w tym pogubiłem.
0
1
Zawsze pokazuje na wierzchołek stosu, czyli na twoje będzie to pierwszy, wolny element.
1
+------+
<---- SP
+------+
DATA
+------+
DATA
+------+
0
Można tak, a można siak. Zależy jaki stos masz na myśli.
Jeśli mowa o stosie w sensie architektury procesorów x86, to instrukcja push
zmniejsza rejestr wskaźnika stosu i zapisuje wartość pod adresem wskazywanym przez rejestr.
Instrukcja pop
pobiera wartość spod adresu wskazywanego przez rejestr i zwiększa wartość rejestru.
Czyli „wskaźnik stosu” wskazuje na ostatni element (nie na puste miejsce), z tym udziwnieniem że stos jest do góry nogami (rośnie w dół).
Jeśli mowa o jakiejś klasie zaimplementowanej w C++ to może być różnie.
1
A żeby jeszcze zamieszać:
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0473c/Cacbgchh.html