BASIC-Funktionen

Nachfolgend werden die BASIC-Funktionen beschrieben, die der Compiler versteht. Es wird auch auf die Unterschiede zum AC1-Mini-BASIC und Z1013-Tiny-BASIC eingegangen.

Wenn zu einer Funktion keine Syntax angegeben ist, hat die Funktion keine Argumente, d.h., hinter dem Funktionsnamen dürfen keine Klammern stehen.

Funktion Bedeutung AC1-Mini-BASIC Z1013-Tiny-BASIC
ABS Absoluter Betrag ja ja
DEEK 16-Bit-Wert (2 Bytes) aus dem Arbeitsspeicher lesen nein nein
HEX Hexadezimalzahl ja ja
INCHAR Ein Zeichen von der Tastatur lesen ja ja
INKEY Wert der gerade gedrückten Taste lesen nein nein
IN Wert von einem Eingabetor lesen ja ja
INP Wert von einem Eingabetor lesen nein nein
LEN Länge der zuletzt mit I$ eingegebenen Zeichenkette ermitteln nein ja
PEEK 8-Bit-Wert (1 Byte) aus dem Arbeitsspeicher lesen ja ja
RND Ermitteln einer Zufallszahl ja ja
SGN Ermitteln des Vorzeichens nein nein
SIZE Ermitteln der Größe des oberhalb von TOP zur Verfügung stehenden Speicherplatzes ja ja
SQR Ermitteln der Quadratwurzel nein nein
TOP Ermitteln der Adresse des ersten freien Bytes hinter dem Programm ja ja


Erläuterungen zu den Funktionen

In spitzen Klammern eingeschlossene Elemente dienen als Platzhalter und sind entsprechend zu ersetzten.

ABS

Syntax: ABS ( <numerischer Ausdruck> )

Die Funktion liefert den absoluten Betrag des Wertes des angegebenen Ausdrucks.

DEEK

Syntax: DEEK ( <Adresse> )
Adresse:numerischer Ausdruck

Die Funktion liest zwei aufeinander folgende Bytes vom Arbeitsspeicher ab der angegebenen Adresse und liefert sie als 16-Bit-Wert zurück.

HEX

Syntax: HEX ( <Hexadezimalzahl> )
Hexadezimalzahl: Folge von Zeichen aus 0 bis 9, A bis F oder a bis f

Die Funktion liefert den Wert der angegebenen Hexadezimalzahl.

Beim originalen AC1-Mini-BASIC und Z1013-Tiny-BASIC-Interpreter sind Kleinbuchstaben in der Hexadezimalzahl nicht erlaubt. Außerdem dürfen zwischen den Klammern und der Hexadezimalzahl keine Leerzeichen stehen.

INCHAR

Die Funktion liest ein Zeichen von der Tastatur und liefert den Wert dieses Zeichens zurück. Wenn keine Taste gedrückt ist, wird bis zum Drücken einer Taste gewartet.

INKEY

Die Funktion prüft, ob gerade eine Taste gedrückt ist. Wenn ja, wird der Wert des damit eingegebenen Zeichen zurückgeliefert. Anderenfalls liefert die Funktion den Wert Null.

IN, INP

Syntax: IN ( <Adresse> )
INP ( <Adresse> )
Adresse:numerischer Ausdruck

Die Funktionen IN und INP haben die gleiche Wirkung. Sie lesen ein Byte von dem durch die Adresse angegebenen Eingabetor und liefern den Wert des Bytes zurück.

Beim originalen AC1-Mini-BASIC und Z1013-Tiny-BASIC ist nur das Schlüsselwort IN erlaubt.

PEEK

Syntax: PEEK ( <Adresse> )
Adresse:numerischer Ausdruck

Die Funktion liest das Byte vom Arbeitsspeicher, welches auf der angegebenen Adresse steht, und liefert den Wert des Bytes zurück.

RND

Syntax: RND ( <Maximalwert> )
Maximalwert:numerischer Ausdruck

Die Funktion liefert einen zufälligen Wert zwischen eins und dem angegebenen Maximalwert.

SGN

Syntax: SGN ( <numerischer Ausdruck> )

Die Funktion liefert -1, wenn der Wert des angegebenen Ausdrucks kleiner Null ist, 1 wenn der Wert größer Null ist und Null, wenn der Wert Null ist.

SIZE

Die Funktion liefert die Größe des Speicherbereichs zurück, der sich unmittelbar an das Programm anschließt und dessen Adresse mit der TOP-Funktion ermittelt werden kann. Die obere Grenze dieses Speicherbereichs wird in den Compiler-Optionen eingestellt. Wenn die Größe dieses Bereichs 32767 Bytes übersteigt, wird nur 32767 zurückgeliefert, da das der größtmögliche positive Wert ist.

SQR

Syntax: SQR ( <numerischer Ausdruck> )

Die Funktion liefert den ganzzahligen Anteil der Quadratwurzel aus dem Wert des angegebenen Ausdrucks zurück.

TOP

Die Funktion liefert die Adresse des ersten freien Bytes hinter dem Programm zurück.