BASIC-Compiler

Quelltext


1. Dateiformat

Das BASIC-Programm ist der Quelltext für den Compiler. Es muss in Form einer einfachen Textdatei vorliegen. Bei der Programmierung innerhalb von JKCEMU bietet sich dafür der integrierte Texteditor an. Damit ist es möglich, das compilierte Programm automatisch direkt in den Arbeitsspeicher des Emulators laden zu lassen. Wer einen anderen Texteditor nutzen möchte, kann das BASIC-Programm mit der Kommandozeilenversion des Compilers übersetzen.

2. Groß-/Kleinschreibung

Groß-/Kleinschreibung spielt außer in Zeichenketten und Zeichenkonstanten keine Rolle. Alle Anweisungen, Funktionen, Prozeduren, Variablen und Marken können beliebig groß, klein oder groß und klein geschrieben werden. Zur besseren Übersichtlichkeit können Leerzeilen eingefügt sowie Anweisungen und Syntax-Elemente eingerückt oder mit Leerzeichen getrennt werden.

3. Zeilennummern

Der Compiler versteht BASIC-Programme sowohl in der klassischen Form mit Zeilennummern am Anfang jeder Zeile als auch ohne Zeilennummern. Speziell für den zweiten Fall wurden Marken als Ersatz für die Zeilennummern eingeführt.

Das Bespiel zeigt ein Programm mit und ohne Zeilennummern. In der Version ohne Zeilennummern wird eine Marke verwendet. Marken werden im nächsten Abschnitt beschrieben.

Programm mit Zeilennummern Programm ohne Zeilennummern
10 I=0
20 I=I+1
30 PRINT I
40 IF I<100 THEN GOTO 20
50 END
I=0
schleife:
I=I+1
PRINT I
IF I<100 THEN GOTO schleife
END


Im BASIC-Programm stehende Zeilennummern werden im JKCEMU und der Hilfe BASIC-Zeilennummern genannt.

4. Marken

Es gibt BASIC-Anweisungen, die auf eine Zeilennummer verweisen, z.B. GOTO, GOSUB, RESTORE. Wird nun ohne BASIC-Zeilennummern gearbeitet, benötigt man eine andere Form zur Referenzierung einer Quelltextstelle. Dafür kennt der BASIC-Compiler Marken. Eine Marke ist eine Markierung einer Quelltextzeile mit einer frei wählbaren Bezeichnung, die jedoch kein reserviertes Schlüsselwort sein darf und auch sonst mit keiner Variable, Funktion oder Prozedur namentlich übereinstimmen darf.

Eine Marke muss allein in einer Zeile stehen, am Zeilenanfang beginnen (keine vorangestellten Leerzeichen) und mit einem Doppelpunkt abgeschlossen sein. Referenziert wird auf die Marke ohne dem Doppelpunkt. Das Beispiel demonstriert die Verwendung einer Marke mit dem Namen datenanfang.

RESTORE datenanfang
...
datenanfang:
  DATA 1,2,3

Achtung! Hinter dem abschließenden Dopppelpunkt der Marke darf nichts mehr in der Zeile stehen, damit der Compiler eine Marke syntaktisch von einer Anweisung unterscheiden kann.

5. Syntax einer Programmzeile

Es gibt drei Arten von Programmzeilen:
  1. Leerzeile
  2. Zeile mit einer Marke
  3. Zeile mit Anweisungen

Leerzeilen dienen zur besseren Übersichtlichkeit. Eine Zeile mit einer Marke dient zur Markierung einer Quelltextstelle und ist ein Ersatz für die BASIC-Zeilennummern. Zeilen mit Anweisungen können eine oder mehrere Anweisungen enthalten. Im Fall von mehreren Anweisungen sind diese durch einen Doppelpunkt voneinander zu trennen. Ein Liste der Anweisungen finden Sie hier.

Leerzeilen und Zeilen mit Anweisungen können eine BASIC-Zeilennummer enthalten. Bei Zeilen mit einer Marke ist das nicht möglich.

6. Kommentare

Für Kommentare gibt es die Anweisung REM. Anstelle des Schlüsselworts REM kann auch ein Ausrufezeichen oder ein Apostroph (Quote-Zeichen) geschrieben werden. Ein Kommentar geht immer bis zum Zeilenende, auch wenn im Kommentar ein Doppelpunkt vorkommt.

Beispiele für Kommentare:

REM Kommentar
!Kommentar
'Kommentar
A=100:REM Kommentar
B=200:!Kommentar
C=300:'Kommentar: auch noch Kommentar