Unterprogramm

Aus C64-Wiki
Wechseln zu: Navigation, Suche

Ein Unterprogramm dient dazu, einen häufig gebrauchten Programmabschnitt erneut zu nutzen. Die Vorteile hierbei sind, dass Arbeitsspeicher eingespart wird, der Programmierer weniger Befehle eingeben muss, und das Programm durch die modulare Struktur übersichtlicher wird. Es können auch mehrere Unterprogramme miteinander verknüpft oder verschachtelt werden. Allerdings erfolgt bei Verknüpfung (per GOTO) der Rücksprung vom zuletzt aufgerufenen Unterprogramm direkt in den relativ zum zuerst aufgerufenen übergeordneten Programmteil.

Durch ein nicht richtig beendetes Unterprogramm kann es zu einem Stacküberlauf kommen und somit zu der BASIC-Fehlermeldung ?OUT OF MEMORY ERROR.

Beim BASIC des C64 wird hierzu der Befehl GOSUB genutzt. Ein Unterprogramm wird im CBM-BASIC mit dem Befehl RETURN beendet.

In Assembler der 6502-Familie lautet der entsprechende Mnemonic zum Aufruf JSR und das Gegenstück für den Rücksprung heißt RTS.