Unterstützung von größeren Ganzzahlen als integer32

Automatisch übersetzt von Deepl

Obwohl die Reals als ungenau gelten, sind sie auch für sehr große Zahlen zu 100 % genau, solange sie keinen Dezimalpunkt (=Ganzzahlen) verwenden.

Zahlen bis zu 53 Bit, genauer gesagt [-(2^53)+1, (2^53)-1], d. h. ein Bereich von -9.007.199.254.740.992 bis 9.007.199.254.740.992, werden exakt dargestellt.

Mehr über Reals

Wenn Sie sich die Definition von Double-precision binary floating-point auf Wikipedia ansehen, werden Sie Folgendes über die Aufteilung und Genauigkeit der Ziffern finden:

„Die 53-Bit-Präzision des Signifikanten ergibt eine Genauigkeit von 15 bis 17 signifikanten Dezimalziffern (2-53 ≈ 1,11 × 10-16). Wenn eine dezimale Zeichenkette mit höchstens 15 signifikanten Ziffern in die IEEE 754-Doppelpräzisionsdarstellung konvertiert und dann wieder in eine dezimale Zeichenkette mit der gleichen Anzahl von Ziffern umgewandelt wird, sollte das Endergebnis mit der ursprünglichen Zeichenkette übereinstimmen. Wird eine IEEE 754-Zahl mit doppelter Genauigkeit in eine Dezimalzeichenkette mit mindestens 17 signifikanten Ziffern umgewandelt und dann wieder in die doppelte Genauigkeit zurückgewandelt, muss das Endergebnis mit der ursprünglichen Zahl übereinstimmen.“

In eine Zeichenkette umwandeln

Während es viele Jahre lang möglich war, mit dem Typ Real Berechnungen mit großen Zahlen durchzuführen, war die Konvertierung in oder aus dem Text auf die Verwendung der 12-stelligen wissenschaftlichen Notation beschränkt, was zu einem Verlust an Präzision führte.

Mit 4D v19 R6 haben wir die Genauigkeit und die Umwandlung einer Realzahl (die eine ganze Zahl darstellt) in einen Text verbessert.

Die Verbesserung der Umwandlung in einen String betrifft den String()-Befehl und die JSON- und XML-Befehle, die Zahlen in String-Form zurückgeben.

Code-Editor

Zum Beispiel können Sie jetzt im Code-Editor eingeben:

$r:=2147483647000000
und es wird so bleiben, wie es ist, anstatt als formatiert zu werden:
$r:=2.147483647e+15
Viel Spaß beim Programmieren!

Vanessa Talbot
Product Owner - Vanessa Talbot kam im Juni 2014 zum 4D Programmteam. Als Product Owner ist sie für das Schreiben der User Stories und deren Umsetzung in funktionale Spezifikationen zuständig. Ihre Aufgabe ist es auch, sicherzustellen, dass die Implementierung der Funktionen den Anforderungen des Kunden entspricht. Seit ihrer Ankunft hat sie an der Definition der wichtigsten Funktionen in 4D gearbeitet. Sie hat an den meisten der neuen Funktionen für präemptives Multi-Threading gearbeitet und auch an einem sehr komplexen Thema: der neuen Architektur für erstellte Anwendungen. Vanessa hat einen Abschluss von der Telecom Saint-Etienne. Sie begann ihre Karriere am Criminal Research Institute als Entwicklerin für die audiovisuelle Abteilung. Sie hat auch in den Bereichen Medien und Medizin als Expertin für technischen Support, Produktion und die Dokumentation neuer Funktionen gearbeitet.