SourceForge.net Logo

Programm-Syntax

Ein Basic256-Programm besteht aus einer Folge von Anweisungen, die durch Zeilenumbrüche getrennt sind und die der Reihe nach ausgeführt werden.

Numerische Konstanten

Numerische Konstanten sind sämtliche Zahlenzeichen. Ein optionales Minus-Zeichen kann vorangestellt werden, um negative Zahlen darzustellen. Ein optionaler Dezimalpunkt, gefolgt von mehr Zahlen, kann folgen, um Fließkommazahlen zu erhalten.

Zeichenketten-Konstanten (auch Text-Konstanten)

Zeichenkettenkonstanten sind null oder mehr Zeichen, die in doppelte Hochkommata (", Gänsefüßchen oben) eingeschlossen sind.

Variablen

Die Namen von Variablen, die numerische Werte speichern (numerische Variablen), müssen mit einem Buchstaben beginnen; danach können beliebig vielen alphanumerischen Zeichen folgen. Umlaute sind nicht erlaubt.

Variablennamen für Zeichenketenvariablen folgen den gleichen Regeln wie numerische Variablen, sie müssen jedoch mit einem Dollar-Zeichen ($) enden.

Felder

Felder werden mit dem DIM-Befehl definiert. Sie können numerische Daten oder Zeichenketten enthalten. Die einzelnen Elemente können mittels mittels des Indexes, der in eckige Klammern eingeschlossen ist, zugegriffen werden. Der Index des ersten Elementes hat die Nummer 0. Beispiel:

meinFeld[4]

greift auf das 5. Element von 'meinFeld' zu.

Anonyme Felder

Ein anonymes Feld ist eine Reihe von numerischen Werten oder Zeichenketten-Werten, die mit Kommata abgetrennt und in geschweifte Klammern eingeschlossen sind.

Ein anonymes Feld kann anstelle von Feldvariablen oder zur Initialisierung von Feldvariablen benutzt werden:

dim myarray(4)
mayarray = {1, 2, 3, 4}

Operatoren

Die Operatoren +,-,*,/ werden für die Addition, Subtraktion, Multiplikation und Division genutzt. Gültige Operanden sind numerische Konstanten und/oder numerische Variablen.

Der = Operator wird zur Zuweisung von Werten zu Variablen und zum Testen auf Gleichheit verwendet.

Der + Operator kann benutzt werden, um jegliche Kombination von Zeichenketten-Konstanten und Zeichenketten-Variablen aneinanderzufügen.

Der : Operator trennt mehrere Befehle in einer Zeile voneinander.

Der ; Operator unterdrückt den Zeilenvorschub, der normalerweise nach einem PRINT erfolgt. Beispiel:

print "Hallo";

Der # Operator ist eine Abkürzung für den REM-Befehl, und ist mit ihm austauschbar.

Befehlsreferenz

Befehl Abs
Format abs ( Ausdruck )
Beschreibung Gibt den absoluten Wert von Ausdruck zurück.
Beispiel c = abs(a-b)
Befehl Ceil
Format ceil ( Ausdruck )
Beschreibung Gibt die kleinste ganze Zahl zurück, die größer oder gleich Ausdruck ist.
Siehe auch Floor
Beispiel i = floor(-1.25) rem i ist -1
Befehl Circle
Format circle x,y,r
Beschreibung Zeichnet einen mit der aktuellen Farbe ausgefüllten Kreis mit Mittelpunkt x,y und Radius r.
Beispiel color yellow : circle 20,20,10
Befehl Clg
Format clg
Beschreibung Löscht den Inhalt des Grafikfensters.
Befehl Close
Format close
Beschreibung Schließt die aktuell geöffnete Datei. Wenn gerade keine Datei offen ist, hat der Befehl keine Wirkung.
Siehe auch Open, Read, Write, Reset
Befehl Cls
Format cls
Beschreibung Löscht den Inhalt des Textfensters.
Befehl Color
Format color Farbname
Beschreibung Setzt die aktuelle Farbe auf Farbname.
Beispiel color blue
Befehl Cos
Format cos ( Ausdruck )
Beschreibung Berechnet den Kosinus von Ausdruck. Ausdruck muss ein Bogenmaß sein.
Note Die cos-Funktion liefert kein besonders genaues Ergebnis.
Siehe auch Sin, Tan
Beispiel c = cos( 2*PI*deg/360)
Befehl Dim
Format dim Variable ( AnzahlElemente )
Beschreibung Liefert ein neu erzeugtes Feld der Länge AnzahlElemente zurück. Der Typ des erzeugten Feldes (Zeichenkettenfeld oder numerisches Feld) wird durch den Typ von Variable bestimmt.
Note Auf Elemente des Feldes wird via Variable[Index] zugegriffen. Index läuft von 0 bis (AnzahlElemente - 1)
Beispiel dim f(100) : f[0] = 1 : dim c$(5) : c$[4] = "Hi!"
Befehl End
Format end
Beschreibung Beendet die Ausführung des Programmes.
Befehl FastGraphics
Format fastgraphics
Beschreibung Schaltet in den FastGraphics-Modus, bis das Programm beendet wird. Der FastGraphics-Modus bedeutet, dass der Inhalt des Grafikfensters erst beim nächsten REFRESH-Befehl aktualisiert wird. Dadurch können komplexe Animationen deutlich beschleunigt und Flimmern vermieden werden.
Note Bei Animationen wird empfohlen, alle Grafikbefehle in Unterprogramme auszulagern und einen einziges REFRESH-Befehl zu benutzen, sobald das Einzelbild fertig ist.
Befehl Floor
Format floor ( Ausdruck )
Beschreibung Gibt die größte ganze Zahl zurück, die kleiner oder gleich Ausdruck ist.
Siehe auch Ceil
Beispiel i = floor(-1.25) rem i ist -2
Befehl For/Next
Format for Variable = Ausdruck1 to Ausdruck2 [ step Ausdruck3 ]
...
next Variable
Beschreibung Die Befehle FOR und NEXT werden zusammen benutzt, um einen Befehl oder eine Gruppe von Befehlen eine bestimmte Anzahl mal hintereinander auszuführen. Beim Betreten der FOR-Schleife wird Variable auf das Ergebnis von Ausdruck1 gesetzt.
Nach jedem NEXT Kommando wird Variable entweder um 1 erhöht (Standard), oder, bei Benutzung des optionalen STEP Befehls, um den Wert von Ausdruck3 erhöht. Für Werte von STEP größer null wird die Schleife so oft durchlaufen, bis Variable größer oder gleich Ausdruck2 ist. Bei negativen STEP-Werten ist die Abbruchbedingung erreicht, wenn Variable kleiner oder gleich Ausdruck2 ist
Beispiel for i = 1 to 10
print i
next i
Befehl Goto
Format goto Sprungmarke
Beschreibung Springt zu Sprungmarke.
Note Eine Sprungmarke wird mit Bezeichner>: erzeugt, z.B. nochmal:. Basic-Befehle sind als Bezeichner nicht zulässig.
Beispiel goto nochmal
Befehl Gosub / Return
Format gosub Spungmarke
...
return
Beschreibung Springt zu Sprungmarke Marke. Beim nächsten auf Marke folgenden RETURN-Befehl wird die Programmausführung in der unmittelbar auf das GOSUB folgenden Zeile fortgesetzt. GOSUB-Befehle können geschachtelt werden.
Befehl Instr
Format instr Zeichenkette1, Zeichenkette2
Beschreibung Prüft, ob Zeichenkette2 in Zeichenkette1 enthalten ist. Wenn ja, wird der Index des Anfangszeichens des ersten Vorkommens von Zeichenkette2 zurückgeliefert. Anderenfalls gibt der Befehl 0 zurück.
Note Alle Indexe/Positionen innerhalb von Zeichenketten beginnen mit 1.
Beispiel Die Zeile
print instr("Hallo", "lo")
gibt
4
im Textfenster aus.
Befehl Int
Format int ( Ausdruck )
int ( Zeichenkettenausdruck )
Beschreibung Umwandlung in eine ganze Zahl (Integer). Int() schneidet die Dezimalstellen einer Fließkommazahl ab oder wandelt eine Zeichenkette (String) in eine ganze Zahl um.
Beispiel c$ = "12" : i = int( c )
Befehl If / Then
Format if LogischerAusdruck then Befehl
Beschreibung Wertet Log. Ausdruck aus. Wenn der Ausdruck wahr ist (true), dann wird Befehl ausgeführt. Wenn er falsch (false) ist, wird Befehl ignoriert und die Programmauführung bei der nächsten Zeile fortgesetzt.
Note Vergleichsoperatoren sind =,<>,<,>,<=,>=. Logische Verknüpfungen sind mittels AND und OR möglich.
Beispiel if a <> b then goto ende
Befehl Input
Format input Zeichenkette, Stringvariable
Beschreibung Gibt Zeichenkette aus und erwartet eine Texteingabe im Textfenster. Die Eingabe muß mit der Eingabe-Taste abgeschlossen werden. Die eingelesene Zeile wird in Variable Stringvariable gespeichert.
Beispiel input "Bitte gib Deinen Namen ein: ", name$
Befehl Key
Format key
Beschreibung Liefert sofort den zur gerade gedrückten Taste gehörenden ganzzahligen Wert zurück. Wenn keine Taste gedrückt ist, wird der Wert 0 zurückgeliefert
Note Dieses Programmstück
if key = 47 then print key
tut nicht das gewünschte, denn der KEY-Befehl wird 2 Mal hintereinander aufgerufen, liefert im allgemeinen also 2 verschiedene Werte zurück. Richtig müßte der Quelltext so aussehen:
a = key
if a = 47 then print a
Befehl Length
Format length ( Zeichenkette )
Beschreibung Liefert die Anzahl von Zeichen in Zeichenkette zurück.
Beispiel i = length( "Hallo" ) rem i ist 5
Befehl Line
Format line x0, y0, x1, y1
Beschreibung Zeichnet eine Linie von Punkt x0,y0 zu Punkt x1, y1.
Beispiel line 0,0,299,299
Befehl Mid
Format mid ( Zeichenkette, Startindex, Länge )
Beschreibung Gibt ein Länge Zeichen langes Teilstück der Zeichenkette zurück, startend beiStartindex.
Beispiel Die Zeile
print mid("Hello", 2, 3)
gibt im Textfenster
ell
aus.
Befehl Open
Format open Dateiname
Beschreibung Öffnet eine Datei zum Lesen und Schreiben. Der Dateiname muß als Zeichenkette angegeben werden und kann eine absolute oder relative Pfadangabe enthalten.
Note Zu einem gegebenen Zeitpunkt kann nur eine Datei geöffnet sein. Wenn eine neue Datei geöffnet wird, während eine andere Datei bereits offen ist, wird diese andere Datei geschlossen.
Siehe auch Close, Read, Write, Reset
Befehl Pause
Format pause Sekunden
Beschreibung Hält die Programmausführung für die angegebene Anzahl Sekunden an. Der Sekunden-Wert kann eine Fließkommazahl sein, damit sind auch Pausen kleiner als eine Sekunde möglich.
Beispiel pause 0.1
Befehl Plot
Format plot x, y
Beschreibung Gibt dem Pixel an der Koordinatenposition x,y im Grafikfenster die aktuelle Farbe.
Beispiel plot 10,10
Befehl Poly
Format poly Feld
Beschreibung Zeichnet ein Polygon. Die Seiten des Polygons werden durch die Werte im Feld bestimmt, welche immer abwechselnd x-Werte und y-Werte sein sollten.
Beispiel dim a(6)
...
poly a
Befehl Print
Format print Ausdruck [ ; ]
Beschreibung Gibt einen Text im Textfenster aus, gefolgt von einem Zeilenumbruch. Wenn das optionale Semikolon am Ende vorhanden ist, erfolgt kein Zeilenumbruch.
Beispiel print "Hallo "; : print"Du !"
Befehl Rand
Format rand
Beschreibung Liefert eine Zufallszahl zwischen 0 und 1 zurück. Die Werteverteilung ist gleichförmig.
Note Um Zufallszahlem mit einem anderen Wertebereich zu erzeugen, können die notwendigen Zahlen zum RAND-Ergebnis addiert oder damit multipliziert werden. Um zum Beispiel eine ganzahlige Zufallszahl zwischen 0 und 10 (einschließlich) zu erzeugen, kann int(rand * 10) benutzt werden.
Befehl Read
Format read
Beschreibung Liest einen Token von der gerade geöffneten Datei ein und gibt ihn zurück. Ein Token ist jegliche Zeichenkette, die mit einem Leerzeichen, einem Tabulator oder dem Zeilenende endet.
Siehe auch Open, Close, Write, Reset
Befehl Rect
Format rect x,y,b,h
Beschreibung Zeichnet ein mit der aktuellen Farbe ausgefülltes Rechteck mit der Höhe h Pixel und der Breite b Pixel. Die obere linke Ecke hat die Koodinaten x,y.
Befehl Refresh
Format refresh
Beschreibung Aktualisiert das Grafikfenster mit allen Grafikbefehlen, die seit dem vorherigen REFRESH abgesetzt wurden. REFRESH funktioniert nur im FastGraphics-Modus.
Befehl Rem
Format rem Kommentar
Beschreibung Steht am Anfang einer Kommentarzeile. Zeilen, die mit REM beginnen, werden bei der Programmausführung ignoriert.
Befehl Reset
Format reset
Beschreibung Löscht den Inhalt der aktuell geöffneten Datei. Der Inhalt der Datei geht verloren.
Siehe auch Open, Read, Close, Write
Befehl Sin
Format sin ( Ausdruck )
Beschreibung Berechnet den Sinus von Ausdruck. Ausdruck muss ein Bogenmaß sein.
Note Die sin-Funktion liefert kein besonders genaues Ergebnis.
Siehe auch Cos, Tan
Beispiel s = sin( 2*PI*deg/360)
Befehl String
Format string ( Ausdruck )
Beschreibung Liefert die Zahl Ausdruck als Zeichenkette zurück.
Beispiel s$ = string(12*13) rem s$ ist "156"
Befehl Tan
Format tan ( Ausdruck )
Beschreibung Berechnet den Tangens von Ausdruck. Ausdruck muss ein Bogenmaß sein.
Note Die tan()-Funktion liefert kein besonders genaues Ergebnis.
Siehe auch Sin, Cos
Beispiel t = tan( 2*PI*deg/360 )
Befehl Write
Format write Zeichenkette
Beschreibung Schreibt die Zeichenkette an das Ende der aktuell geöffneten Datei.
Siehe auch Open, Read, Close, Reset