QBasic-Befehle - gegliedert nach Funktionen
Der genaue Aufbau der Befehle geht aus der QBasic-Onlinehilfe hervor [Dateizugriffe] [Datentypen, Variablen, Felder] [DOS] [Tastatur-Eingabe, Bildschirmausgabe, Sound] [Vergleichoperationen, logische Verknüpfungen] [Ereignisgesteuerte Bearbeitung] [Mathematik] [Programmaufbau, Subroutinen] [Direkte Speicherzugriffe] [Strings ] |
|
Dateizugriffe | |
BLOAD Dateiname, Offset | Lädt eine Datei in den Speicherbereich |
BSAVE Dateiname, Offset, Länge | Sichert den Speicherbereich |
CLOSE #Dateinummer | Schließt die Datei |
EOF (Dateinummer) | Ermittelt das Ende einer Datei |
LOF (Dateinummer) | Ermittelt die Größe einer Datei |
LOC (Dateinummer) | Ermittelt die Position des Dateizeigers |
FIELD #Dateinummer, Länge AS String | Setzt den Puffer für Random Datei |
GET #Dateinummer, SatzNummer, X | Liest einen Datensatz aus einer Datei |
INPUT #Dateinummer, X | Liest Daten aus einer Datei |
INPUT$ (Anzahl, #Dateinummer) | Liest eine Zeichenkette aus einer Datei |
LINE INPUT #Dateinummer, X | Liest einen String aus einer Datei |
PRINT #Dateinummer, X | Schreibt die Variable X in eine Datei |
PRINT #Dateinummer, USING Format; X | Schreibt die Variable X formatiert in eine Datei |
PUT #Dateinummer, SatzNummer, X | Daten(satz) in Datei schreiben |
LSET Datenvariable = String | Kopiert Daten linksbündig in den Puffer |
RSET Datenvariable = String | Kopiert Daten rechtsbündig in den Puffer |
RESET | Leert den Puffer und schließt die Datei |
SEEK (Dateinummer) | Ermittelt die Position des Dateizeigers |
SEEK Dateinummer, Position | Setzt den Dateizeiger |
OPEN Datei FOR Modus AS #Dateinummer | Öffnet eine Datei |
Datentypen, Variablen, Felder | |
X% | Ganzzahl |
X& | Große Ganzzahl |
X! | Gleitkommawert |
VariablenName# | Gleitkommawert mit doppelter Genauigkeit |
VariablenName$ | Zeichenkette |
DEFDBL | Legt Variablen als DOUBLE fest |
DEFINT | Legt Variablen als INTEGER fest |
DEFLNG | Variablen als LONG festlegen |
DEFSNG | Variablen als SINGLE festlegen |
DEFSTR | Legt Variablen als STRING fest |
CLEAR Stackgröße | Löscht Variablenspeicher, legt Stackgröße fest |
DATA Konstantenliste | Legt Konstanten für READ fest |
\ DATE$ | Konstante für das Datum |
TIME$ | Konstante für die Uhrzeit |
DIM SHARED Name | Legt globale Variablen fest |
DIM Name (Dimension) | Legt Felder fest |
$DYNAMIC | Legt Feldvereinbarungen als dynamisch fest |
ERASE FeldName | Initialisiert ein Feld neu oder löscht es |
UBOUND FeldName | Ermittelt die obere Indexgrenze eines Feldes |
LBOUND FeldName | Ermittelt die untere Indexgrenze eines Feldes |
OPTION BASE 0/1 | Setzt Startindex für Felder |
READ Variable | Weist ein DATA-Elemente |
RESTORE [Marke] | Setzt DATA-Zeiger neu |
SHARED Name | Deklariert Prozedur/Funktionsvariablen als global |
STATIC Name | Deklariert Prozedur/Funktionsvariablen als
lokal und statisch |
$STATIC | Deklariert Feldvereinbarungen als statisch |
SWAP Variablel, Variable2 | Vertausch die Werte von zwei Variablen |
DOS | |
CHDIR Verzeichnis | Wechselt das Verzeichnis |
ENVIRON String | Schreibt einen Eintrag in der Umgebung |
ENVIRON$ String/Nummer | Ermittelt einen Eintrag in der Umgebung |
FILES [Maske] | Zeigt den Inhalt des angegebenen Pfades an |
KILL DateiName | Löscht die Datei |
MKDIR Verzeichnis | Erstellt ein Verzeichnis |
LOCK#DateiNummer[, DatenSatz] LOCK #DateiNummer[, VonNummer] [ TO BisNummer] |
Netzwerkzugriff einschränken |
UNLOCK #DateiNummer[, DatenSatz] UNLOCK #DateiNummer[, VonNummer] [ TO BisNummer] |
Netzwerk-Zugriffsbeschränkung aufheben |
NAME AlterName AS NeuerName | Benennt eine Datei um |
RMDIR Verzeichnis | Löscht das Verzeichnis |
SHELL "DOS-Anweisung" | Führt die o.g. Dos Befehle aus |
Tastatur-Eingabe, Bildschirmausgabe, Sound | |
INKEYS | Liest die Tastatur aus |
INPUT X | Liest die Daten von der Tastatur |
INPUT$ (Anzahl) | Liest ein Zeichen von der Tastatur |
KEY Taste, String | Belegt eine Taste |
KEYON/OFF/LIST | Schaltet Tasten An/Ab |
LINE INPUT X | Liest eine Zeichenkette von der Tastatur |
PRINT X | Gibt die Variable X auf dem Bildschirm aus |
PRINT USING String; X | Gibt den String X formatiert aus |
SPC (Anzahl) | Gint ein Leerzeichen aus |
WRITE X | Schreibt die Variable X auf den Bildschirm |
CLS | Setzt den Bildschirm zurück |
COLOR Farbe | Setzt die Bildschirmfarbe |
SCREEN Zeile, Spalte , Modus | Ändert die Farbe oder den ASCII Wert
eines Zeichens |
CSRLIN | Ermittelt die Cursorposition (Zeile) |
POS | Ermittelt die Cursor-Spalte (Spalte) |
LOCATE X,Y | Setzt die Cursorposition |
TAB X | Setzt die Cursorspalte |
LPOS (Schnittstelle) | Ermittelt die Position im Druckerpuffer |
LPRINT X | Gibt die Variable X über den Drucker aus |
LPRINT USING FormatString; X | Druckt Die Daten Formatiert aus |
WIDTH LPRINT Anzahl | Legt die Zeilenbreite fest |
CIRCLE (xM, yM), Radius [, Farbe] CIRCLE (xM, yM), Radius, [Farbe], Anfang, Ende |
Zeichnet einen Kreis oder KreisbodenKreis
oder Kreisbogen zeichnen |
CIRCLE (xM, yM), Radius, [Farbe], Anfang, Ende,Faktor | Ellipse oder Ellipsenbogen zeichnen |
COLOR Farbwerte | Legt die Hintergrundfarbe fest |
DRAW StringAusdruck | Zeichnet nach der Strringfolge |
GET (xLinks, yOben)-(xRechts, yUnten), Feld | Speichert den angegebenen Grafikausschnit in einem feld |
LINE-(xEnde,yEnde) | Zeichnet eine Gerade |
LINE (xL, yO)-(xR, yU), [Farbe], B / BF | Zeichnet ein Rechteck / Zeichnet ein gefülltes Rechteck |
PAINT (x, y) [, FarbelMuster] [, Rand] | Füllt eine Flächen |
PALETTE Attribut, Farbe PALETTE USING DatenFeld |
Definiert die Farbpalette neu |
PMAP (Startwert, Modus) | wandelt Koordinaten um |
POINT (Modus) | Ermittelt die Position des Grafikcursors |
POINT (x, y) | Ermittelt die Farbe eines Pixels |
PSET (x, y) [, Farbe] PRESET (x, y) [, Farbe] |
Zechinet ein Pixel |
PUT (xLinks. yOben), Feld, Modus | Zeigt die in einem Felf vohandenen Daten als Grafik an |
SCREEN Modus, [l, 0/1] [, Ausgabe] [, Anzeige] | Legt die Screenmodi fest |
STEP | Relative Koordinaten |
VIEW [SCREEN] (xLinks, yOben)-(xRechts, yUnten) | Definiert eine Grafikfläche |
WINDOW [SCREEN] (xLinks, yOben)-(xRechts, yUnten) | Definiert ein koordinatensystem |
BEEP | Spielt einen Signalton |
PLAY StringAusdruck | Spielt die Daten aus einem String |
SOUND Frequenz, Dauer | Spielt einen Ton |
COM (Nummer) ON/OFF/STOP | Kontrolliert die Seriellen Schnittstellen |
INP (AnschlußNummer) | Liest ein Byte von einem Geräteanschluss |
IOCTL#DateiNummer, Zeichenfolge | Sendet Steuerzeichen an einen Gerätetreiber |
IOCTL$ (# |
Status eines Gerätetreibers ermitteln |
OPEN „COMnr: Optionenliste" FOR Modus AS
# DateiNummer [LEN=SatzLänge] |
Initialisiert eine Serielle Schnittstelle |
OUT < AnschlußNummer >, < Byte > | Sendet ein Byte an einen Geräteanschluss |
WATT AnschlußNummer, AND-Muster [. XOR-Muster] | wartet auf ein Byte vom Geräteanschluss |
Vergleichoperationen, logische Verknüpfungen | |
Ausdruck = Ausdruck | Testet auf Gleichheit |
Ausdruck <> Ausdruck | Testet auf Ungleichheit |
Ausdruck < Ausdruck | Testet auf kleiner |
Ausdruck <= Ausdruck | Testet auf kleiner oder gleich |
Ausdruck > Ausdruck | Testet auf ob größer |
Ausdruck >= Ausdruck | Testet auf größer oder gleich |
Bedingung AND Bedingung | UND Verknüpfung der Bedingungen |
Bedingung OR Bedingung | ODER-Verknüpfüng von der Bedingungen |
Bedingung EQV Bedingung | Testet auf Äquivalenz der Bedingungen |
Bedingung IMP Bedingung | Implikation von Bedingungen |
NOT Bedingung | Kehrt Bedingungen um |
ON Ausdruck GOSUB Marke | Springt wenn die Bedingung gegeben ist zu einer SUB |
ON Ausdruck GOTO Marke | Springt wenn der Ausdruck gegeben ist zu einer
Sprungmarke |
Ereignisgesteuerte Bearbeitung | |
ON COM (Nummer) | Führt einen Befehl bei einem Schnitstellenereignissaus |
ON KEY (Nummer) | Führt einen Befehl bei einem Tastaturereignis aus |
ON PEN GOSUB Marke | Führt einen Befehl bei einem Lichtgriffelereignis
aus |
ON PLAY (Anzahl) | Führt einen Befehl bei der Lage im Musikpuffer aus |
ON STRIG (Modus) | Führt einen Befehl bei einem Joystickereignis aus |
ON TIMER (Sekunden) | Führt einen Befehl bei einem Zeitereignis aus |
PEN (Modus) | Ermittelt Lichtgriffeldaten |
PEN | Kontrolliert den Lichtgriffel |
PLAY (0) | AErmittelt die Anzahl der Noten im Musikpuffer |
PLAY | Kontrolliert den Musikpuffer |
STICK (Modus) | Ermittelt die Jaystickkoordinaten |
STRIG (Modus) | Status der Joystick-Knöpfe ermitteln |
STMG (Modus) ON/OFF/STOP | Kontrolliert den Joystick |
TIMER | Ermittelt die Anzahl der Sekunden seit 0 Uhr (Mittemacht) |
TIMER ON/OFF/STOP | Kontrolliert den Zeitzähler |
TROFF | Schaltet die Programmverfolgung aus |
TRON | Schaltet die Programmverfolgung ein |
ERDEV | Ermittelt den Status des Gerätes, das einen Fehler verursacht hat |
ERDEV$ | Ermittelt den Namen des Gerätes das, das einen Fehler verursacht hat |
ERL | Ermittelt die Nummer der Zeile, in der ein Fehler aufgetreten ist |
ERR | Ermittelt die Nummer eines aufgetretenen Fehlers |
ERROR Nummer | Simuliert einen Fehler |
ON ERROR | Führt nach einem Fehler den Befehl aus |
RESUME [NEXT/Marke] | Setzt das Programm nach Fehlerbehandlung an gegebener Stelle fort. |
Mathematik | |
Ausdruck + Ausdruck | Addieren |
Ausdruck - Ausdruck | Subtrahieren |
Ausdruck * Ausdruck | Multiplizieren |
Ausdruck / Ausdruck | Dividieren |
Ausdruck \ Ausdruck | Dividieren (Ergebnis natürlich) |
EXP(Zahl) | Exponentialrechnung |
LOG (Zahl) | Logarithmus |
SIN (Zahl) | Sinu |
COS (Zahl) | Kosinus |
TAN (Zahl) | Tangens |
SQR (Zahl) | Quadratwurzel ziehen |
ATN (Zahl) | Arcustangens |
ABS (Zahl) | Ermittelt den Absolutbetrag einer zahl |
CDBL(Zahl) | Wabdelt eine Zahl in eine DOUBLE um |
CINT (Zahl) | Wabdelt eine Zahl in eine INTEGER um |
CLNG (Zahl) | Wabdelt eine Zahl in eine LONG um |
CSNG (Zahl) | Wabdelt eine Zahl in eine SINGLE um |
STR$ (Zahl) | Wabdelt eine Zahl in einen String um |
VAL (String) | Wandelt einen String in eine Zahl um |
CVD(Zahl) | Wandelt einen String in einen DOUBLE um |
CVI(Zahl) | Wandelt einen String in eine INTEGER um |
CVL(Zahl) | Wandelt einen String in eine LONG um |
CVS(Zahl) | Wandelt einen String in eine SINGLE um |
MKD$ (Zahl) | Wandelt eine doppeltgenaue Gleitpunktzahl in
einen String um |
MKI$ (Zahl) | Wandelt eine einfache Ganzzahl in einen String um |
MKL$ (Zahl) | Wandelt eine große Ganzzahl in einen String um |
MKS$ (Zahl) | Wandelt eine einfachgenaue Gleitpunktzahl in einen String um |
FIX (Zahl) | Ermittelt den Natürlichen Teil einer Zahl |
INT (Zahl) | Rundet die Zahl auf einen Natürlichen Wert ab |
Ausdruck MOD Ausdruck | Ermittelt den Rest einer Ganzzahldividion |
RANDOMIZE [Startwert] | Startet den Zufallsgenerator |
RND [(Zahl)] | Erzeugt eine Zufallszahl zwischen 0 und <1 |
SGN (Zahl) | Ermittelt das Vorzeichen einer Zahl |
Programmaufbau, Subroutinen | |
[CALL] Name | Ruft eine Prozedur auf |
CALL ABSOLUTE ([Parameter,] Offset) | Ruft eine Prozedur in Maschinensprache auf |
DECLARE FUNCTION/SUB Name ([Parameter]) | Deklariert Funktion oder Prozedur |
DEF FNname [(Argumente)] = Ausdruck | Definiert Funktion (einzeilig) |
DEF FNname [(Argumente)] =
Ausdruck AnweisungsBlock FNname = Ausdruck END DEF |
Definiert eine Funktion (mehrzeilig) |
EXIT DEF/FUNCTION/SUB | Beendet eine Funktion/Prozedur |
SUB Name [(Parameter)] | AnweisungsBlock |
END SUB | Beendet ein Unterprogramm |
CHAIN Datei | Ruft ein anderes Programm auf |
END | Beendet das Programm |
GOSUB Marke | Setzt das Programm in einem Unterprogramm fort |
GOTO Marke | Setz das Programm bei einer Marke fort |
REM / ' Text | Kommentartext |
RETURN | Kehrt von einem Unterprogramm hinter die Aufrufstelle zurück |
RUN [Marke/Datei] | Startet ein anderes Programm |
SLEEP [Sekunden] | Pause |
STOP | Unterbricht dasProgramm |
SYSTEM | Programm beenden |
EXIT DEF/DO/FOR/FUNCTION/SUB | Velässt den Anweisungblock |
DO/Loop [WHILE/UNTIL, Bedingung] | Wiederholt die Anweisungen |
FOR Zähler = TO STEP AnweisungsBlock | Zählschleife |
WHILE Bedingung WEND |
Wiederholung der Befehle |
Direkte Speicherzugriffe | |
DEF SEG = SegmentAdresse | Legt das aktuelle Speichersegment fest |
FRE (ZahllString) | Ermittelt den freien Speicher |
PEEK (Offset) | Liest den Wert einer Speicherzelle |
POKE Offset, Wert | Schreibt einen Wert in eine Speicherzelle |
VARPTR (Variable) | Ermittelt die Offsetadresse einer Variable |
VARPTR$ (Variable) | Gibt den Typ und die Offsetadresse einer Variable als String zurück |
VARSEG (Variable) | Ermittelt die Segmentadresse einer Vaiablen |
Strings | |
String + String | Verknüpft zwei Strings |
CHR$ (Zahl) | Gibt den zugehörigen ACSII Wert aus |
HEX$ (Zahl) | Wandelt einen Dezimalzahl in einen Hexadezimal-String um |
OCT$ (Zahl) | Wandelt einen Dezimalzahl in einen Oktal-String um |
STR$ (Zahl) | Wandelt eine Zahl in einen String um |
VAL (String) | Wandelt einen String in eine Zahl um |
SPACE$ (Anzahl) | Erzeugt ein Leerzeichen |
STRINGS (Anzahl, Zeichen/Zahl) | Erzeugt einen String aus immer dem selben Zeichen |
LEN (String) | Ermittelt die Länge eines Strings |
INSTR ([Start,] String, SuchString | Sucht ein Stringstück in einem String und ermittelt
dessen Position |
MID$ (String, Start, Anzahl) | Gib ein Zeichen eines Stings zurück |
LEFT$ (String, Anzahl) | Gib ein zeichen eines Strings zurück, zählt von
rechts |
RIGHT$ (String, Anzahl) | Gib ein zeichen eines Strings zurück, zählt von links |
LTRIM$ (String) | entfernt führende Leerzeichen in einem String |
RTRIM$ (String) | Entfernt die folgenden Leerzeichen aus einem String |
UCASE$ (String) | Wandelt Klein- in Großbuchstaben um |
LCASE$ (String) | Wandelt Groß- in Kleinbuchstaben um |