Bigmath-Operatoren

Beispiele

DIMOPTION 1
DIM A$ [20000]
A$ ="1"
B$ ="12345678 ,9"
Cnt =10
FOR I=1 TO Cnt
A$=A$*B$
DISP A$ "\n"
NEXT
FOR I=1 TO Cnt
A$=A$/B$
DISP A$ "\n"
NEXT

Bei der in diesem Beispiel durchgeführten kumulativen Berechnung entsteht eine Zahl mit dreiundachtzig signifikanten Stellen. In der zweiten Schleife erfolgt dann die Rückrechnung auf die ursprünglichen Ausgangswerte. Das letzte Ergebnis lautet exakt wie die Anfangszahl 12345678,9, daraus ist ersichtlich, dass bei Verwendung der Bigmath-Bibliothek keine Ungenauigkeiten durch Rundungen entstehen. Wenn derartige Berechnungen mit “einfachen“ Gleitkommazahlen durchgeführt werden, so können Rundungsfehler bereits ab der vierzehnten Stelle entstehen. Hierbei ist natürlich zu berücksichtigen, dass der Exponent bei der Betrachtung keine Relevanz hat, denn er gibt nur die Position des Dezimalkommas an, sagt jedoch nichts über die Zahl der signifikanten Stellen aus.

Referenz

OBAS unterstützt die Rechnung mit beliebig genauen Zahlen. Dafür enthält das System eine eigene Bibliothek. In der Grundeinstellung rechnet die Bibliothek mit einer Genauigkeit von 512 Stellen. Da derartige Zahlen nicht im “normalen“ Gleitkommaformat kodiert werden können, werden die Werte in Zeichenketten kodiert. Zur Manipulation der Bigmath-Werte stehen somit alle Zeichenketten-Operatoren und Funktionen zur Verfügung. Die Bigmath-Bibliotheken können mit verschiedenen Grundeinstellungen angepasst werden. Die Details hierzu sind im Kapitel “Dimensionierung von Variablen“ beschrieben.

+, -, *, /, MOD
Die Bigmath-Bibliothek stellt mit Ausnahme der Exponentenfunktion alle arithmetischen Operatoren zur Berechnung zur Verfügung. Um die mit der Bigmath-Bibliothek erzeugten Zeichenkette in einfache Gleitkommazahlen zu verwandeln oder umgekehrt, stehen die OBAS-Funktionen VAL sowie VAL$ zur Verfügung.

Siehe auch



Schatten