Einzelnen Beitrag anzeigen

princyto

Registriert seit: 13. Apr 2004
Ort: Ratingen
15 Beiträge
 
Delphi 2006 Enterprise
 
#1

Funktion "DateTimeToTimeStamp" in Delphicode übersetzen

  Alt 16. Nov 2011, 18:10
Delphi-Version: 5
Hallo Delphi-Freunde,

ich habe mal eine Frage zu der Funktion "DateTimeToTimeStamp" der Unit SysUtils.
Ist Jemand in der Lage diesen Assemblercode in Delphicode zu übersetzen.

Vielen Dank für eure Bemühungen!

Delphi-Quellcode:
function DateTimeToTimeStamp(DateTime: TDateTime): TTimeStamp;
asm
        PUSH EBX
{$IFDEF PIC}
        PUSH EAX
        CALL GetGOT
        MOV EBX,EAX
        POP EAX
{$ELSE}
        XOR EBX,EBX
{$ENDIF}
        MOV ECX,EAX
        FLD DateTime
        FMUL [EBX].FMSecsPerDay
        SUB ESP,8
        FISTP QWORD PTR [ESP]
        FWAIT
        POP EAX
        POP EDX
        OR EDX,EDX
        JNS @@1
        NEG EDX
        NEG EAX
        SBB EDX,0
        DIV [EBX].IMSecsPerDay
        NEG EAX
        JMP @@2
@@1: DIV [EBX].IMSecsPerDay
@@2: ADD EAX,DateDelta
        MOV [ECX].TTimeStamp.Time,EDX
        MOV [ECX].TTimeStamp.Date,EAX
        POP EBX
end;
Eugen

Geändert von princyto (16. Nov 2011 um 18:17 Uhr)
  Mit Zitat antworten Zitat