UTC - Universal Time Coordinated? (GMT?)

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benubi
Beiträge: 186
Registriert: 22.10.2004 17:51
Wohnort: Berlin, Wedding

UTC - Universal Time Coordinated? (GMT?)

Beitrag von Benubi »

Hallo,

kleiner Code, große Frage : geht das auch unter Linux und MacOS. Und/oder unter Windows 64bit? Ich habe nur ein altes 32bit Windows zur Verfügung. Ich bin über diesen kleinen Trick gestolpert als ich durch die fasm pdf-Anleitung geblättert habe. Ich frage mich ein wenig wie das fasm macht um das so als template einzubauen; ich bin ein ewiger noob, also Anfänger - man lernt nie aus (daher endet mein Username mit nubi) ^^
Tja, und ich kenne mich 0.000001% mit Assember aus, maximal.

Code: Alles auswählen

Procedure.i GetUTC()
  !MOV EAX, %t
  ProcedureReturn
EndProcedure


Format$="%dd/%mm/%yyyy %hh:%ii:%ss"

Debug "Local Date:"+FormatDate(Format$,Date())
Debug "UTC Date:"  +FormatDate(Format$,GetUTC())
Und jetzt spukt es ^^

Ich bin mir sicher im Sommer gab es immer eine Sekunde mehr bei GetUTC() als bei GetDate() (neben der Stunden-Differenzen). Die Sekunde könnte imo ein crypto-flag sein, um die Sommerzeit anzudeuten. Wenn Date() & 1 <> GetUTC() & 1 , dann sind wir in der Sommerzeit!!! Aber das ist nur eine Theorie. Vielleicht bin ich auch paranoid oder plemplem... also probiert das mal bitte für mich und im Dienste der Wissenschaft aus !

Dankeschön.

Edit:
1) Hier nochmal die Welt-Uhrzeiten: World Clocks/GMT (runter scrollen)
2) Und "UTC" kann auch Coordinated, Clock oder Code bedeuten ... naja, unwichtiger Firlefanz aber bevor jemand darüber meckert sag ich das mal so =)
Benutzeravatar
mk-soft
Beiträge: 3700
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: UTC - Universal Time Coordinated? (GMT?)

Beitrag von mk-soft »

Das ist NICHT die Aktuelle Zeit, sonder eine Konstante die beim starten des Programm gesetzt wird.

Code: Alles auswählen

Procedure.i GetUTC()
  CompilerIf #PB_Compiler_Processor = #PB_Processor_x86
    !MOV EAX, %t
  CompilerElse
    !MOV RAX, %t
  CompilerEndIf
  ProcedureReturn
EndProcedure


Format$="%dd/%mm/%yyyy %hh:%ii:%ss"

Local.s = "Local Date:"+FormatDate(Format$,Date())
Debug local
Delay(10000)
UTC.s = "UTC Date:"  +FormatDate(Format$,GetUTC())
Debug utc
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Antworten