Einzelnen Beitrag anzeigen

Rudy Velthuis

Registriert seit: 10. Sep 2011
Ort: Gelsenkirchen
42 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Gibt es in Delphi den Datentyp decimal, wie bei c# ?

  Alt 5. Mai 2019, 23:00
In C# gibt es den Typ decimal, damit kann man eine Zahl in einer 16-Bytes-Variablen darstellen. Dabei sind die ersten 14 Byte die Mantisse als Integer-Zahl

https://docs.microsoft.com/de-de/dot...ywords/decimal
Nein, gibt es nicht. Aber ich habe eine geschrieben, die komplett kompatibel ist mit C#'s decimal (und etwas schneller). Wurde ausführlich getestet.

Kann man auf meiner Seite finden.

Momentan nur eine 32-bit version (mit viel assembler, daher schnell), aber die 64 bit-Version wird in einigen Tagen online gestellt. Und ich arbeite an einer PURE-PASCAL-Version (also ohne Assembler) für andere Plattformen als Windows.

Übrigens, nur 96 bit eines C#-Decimal (12 byte) sind "Mantisse". Das zeigt die Spezifikation von C# auch: 96 bit Mantisse (3 x 32 bit), 5 bit Exponent (Scale, negativ) und 1 bit Zeichen (Sign):

Zitat:
The binary representation of a Decimal number consists of a 1-bit sign, a 96-bit integer number, and a scaling factor used to divide the integer number and specify what portion of it is a decimal fraction. The scaling factor is implicitly the number 10 raised to an exponent ranging from 0 to 28.
Übrigens, es gibt auch noch ein BigInteger und ein BigDecimal.
Rudy Velthuis

Geändert von Rudy Velthuis ( 5. Mai 2019 um 23:21 Uhr)
  Mit Zitat antworten Zitat