Stapelzeiger
Der Stapelzeiger ist ein 8-Bit-Register und wird auch SP (Stack Pointer) genannt. Er zeigt normalerweise auf die nächste freie Speicherstelle des Prozessorstapels.
Die Stack Page beim MOS 6502/MOS 6510 liegt bei $0100 bis $01FF (siehe Speicherbelegungsplan). Um vom Stackpointer auf die nächste freie Adresse des Stapels zu kommen, wird implizit immer $0100 zum Inhalt des Stackpointers addiert.
Die Transferbefehle TXS und TSX erlauben den Zugriff auf das Low-Byte des Stackpointers über das X-Register. Auf das oberste Element des Stapels kann somit so zugegriffen werden:
TSX INC $0101,X
Diese Beispiel erhöht das zuoberst liegende Byte des Stapels um 1. Die erste frei Stelle wird dann mit $0100,X adressiert (darf aber ohne Sperrung des Interrupts nicht verwendet werden).
Weitere Befehle, die den Stackpointer durch Stack-Manipulationen beeinflussen:
Darüber hinaus werden im Fall von Hardware-Interrupts wie IRQ und NMI der Stackpointer geändert.
Nach einem Hardware-Reset ist der Inhalt des Registers nicht definiert, weshalb das Register unbedingt initial gesetzt werden muss.