Einzelnen Beitrag anzeigen

TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.942 Beiträge
 
Delphi 12 Athens
 
#4

AW: Datums-Umwandlung

  Alt 27. Mai 2022, 16:56
Ja, TDateTime ist intern ein Double also ein 64 Bit Floating Point Wert, bei dem der Ganzzahlteil
die Tage seit 30.12.1899 sind und der fraktionale Teil die Uhrzeit innerhalb des Tages darstellt.

Extended ist ein 80 Bit Fließkommatyp, den es gibt weil Delphi die interne Register Repräsentation
der Intel x87 FPU Register mittels diesem Typ verfügbar macht. Wer höhere Präzission braucht kann also
diesen Datenfyp für seine Berechnungen benutzen. Allerdings hat Himisu recht: das geht nur unter Win32.

Auf anderen Plattformen werden Fließkommazahlen evtl. ganz anders intern behandelt und bei Win64 gab's
damals die Auswahl entweder ASM Routinen im Code benutzen zu können (nein, nicht Inline, aber zumindest
als ganze Prozedur oder Methode) oder 80 Bit Extended unterstützt zu bekommen. Die Entscheidung fiel
zugunsten ASM aus... Somit gibt es auf anderen Plattformen zwar einen Datentyp Extended, aber nur als
Alias für Double...

Grüße
TurboMagic
  Mit Zitat antworten Zitat