Date: prev next · Thread: first prev next last
2019 Archives by date, by thread · List index


Hallo Gerhard,

Gerhard Weydt schrieb am 27.12.2019 um 21:39:
Hallo Marino,

Am 27.12.2019 um 10:35 schrieb Marino Salvalaggio:
...
Nach DIN EN 28601 galt im deutschen Sprachraum JJJJ-MM-TT
Diese wurde jedoch mit DIN 5008 (2001) zugunsten JJJJ.MM.TT (wie in
LibOf) wieder fallen gelassen!
Das wurde nicht fallengelassen, es wurde nur die bisher in Deutschland
verwendete Form TT.MM.JJJJ (und nicht, wie du schreibst, die umgekehrte
JJJJ.MM.TT !!!) wieder offiziell zugelassen, weil sich keiner an die
Standardform JJJJ-MM-TT gehalten hat, was auch kein Wunder ist, weil
dieser internationale Standard auch kaum irgendwo offensiv vertrieben
und beworben wurde.
Und LibO unterstützt selbstverständlich auch das internationale Format,
gib mal in ein leeres Calc-Dokument 2019-12-27 ein, das ist dann
anschließend als Datumsfeld erkannt worden, mit eben dieser Formatierung.
LibO speichert Datum und Uhrzeit in einer Zahl, wobei die
Vorkommastellen die Tage seit einem Stichtag zählen, den ich momentan
nicht mehr weiß, das kann man ja ausprobieren, und die Nachkommstellen
die Uhrzeit ergeben, 0,5 entspricht 12 Uhr.

Es tut mir leid, aber hier stimmt etwas nicht...
Es werden bestimmt keine Kommastellen im Speicher verwendet!
Das würde ja bedeuten, dass eine FLOAT bez. REAL in Anwendung wäre. Das
jedoch wäre mit der erheblichen Tatsache verbunden, dass je nach
rechen-Operanden enorme Abweichungen der tatsächlichen Zeit resultieren
würden.
        => https://de.wikipedia.org/wiki/Gleitkommazahl
        / Eigenschaften einer Gleitkommaarithmetik

TIME wird in Millisekunden in INT hinterlegt, darum auch der beschränkte
Umfang von ~±596 Std.
(das reicht nicht mal für einen Monat ~720h, aber für ms-genaue
Wochenuhren und Funktion-Timer prädestiniert)

Zeit und Datum DATE_AND_TIME werden daher im Speicher immer Binär in
Anzahl Sekunden ab Fixpunkt hinterlegt.
Bei 32Bit DINT ergibt das einen Umfang von ± ~68 Jahren vom gesetzten
Nullpunkt aus gerechnet; darum wird ja auch zwingend ein Fixpunkt benötigt.
(Bei 32Bit-Rechnern musste daher für eine grössere Genauigkeit bez.
grösseren Umfang auf 2 DINT geschiftet werden; eine Technik die unter
8Bit-Prozessoren früher zum täglichen Brot gehörten...)

Die Rechnung an sich ist trivial:
1Min = 60 Sek
1Std = 60 Min Bez. 3600Sek.
Tag = 60*60*24 = 86400 Sekunden.
Somit können Zeiten Addiert, Subtrahiert u. u. u. werden ohne dass
spezielle Interpretationen benötigt werden.
Da eine INT Zeit die in INT dividiert wird ohne Rest zurückgegeben wird
(keine Rundung) kann diese direkt z.B. mit 60 geteilt werden und ich
erhalte die Zeit in Minuten - u.s.w. Solches macht der Zeitinterpreter.
Dieser interpunktiert diese Resultate und gibt die Werte nach Addition
mit dem Fixpunkt formatiert aus: DD.MM.JJJJ hh:mm:ss aus.
In Jahresbereich muss jedoch ein Kalender mit integriert sein, damit die
Schalttage mit einfliessen sonst kommt es zu Interpretationsabweich-ungen!
Bei 64Bit LINT ist die Beschränkung an sich kein Thema ist doch der
Bereich bei ±1.45E11 Jahre in Sekunden; daher kann hier die Formatierung
auch bis Millisekunde genau ausgegeben werden.

Was man an der Oberfläche
sieht, ist immer umgerechnet und formatiert. Keine der vielen möglichen
Formen ist besser oder schlechter als die andere, LibO ist da neutral.

Gruß

Gerhard

Gruss
Marino

--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.