|
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 |