AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 22:17

Parameter dieser Suchanfrage:

Suche in Thema: Exponent aus Extended extrahieren?
Suche alle Beiträge, die von "himitsu" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 7 von insges. 7 Treffern
Suche benötigte 0.006s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Object-Pascal / Delphi-Language

    Re: Exponent aus Extended extrahieren?

      Delphi
      by himitsu, 3. Mai 2009
    Und der Grund, warum die Register unverändert sind/bleiben;
    der selbe ASM-Code soll natürlich überall das Selbe machen.

    was als R (bei RAX) und Co. bei 64 Bit steht, wußte ich jetzt noch nicht ... hatte nie die Zeit und Intention mal danach zu sehen :oops: , außerdem ist Commodore (das 64Bit-Delphi) ja noch nicht draußen :cry:
  • Forum: Object-Pascal / Delphi-Language

    Re: Exponent aus Extended extrahieren?

      Delphi
      by himitsu, 2. Mai 2009
    in EAX ist hier nur der Pointer zu dem Record

    EAX = 32 Bit
    AX = 16 Bit
    AL 8 Bit
  • Forum: Object-Pascal / Delphi-Language

    Re: Exponent aus Extended extrahieren?

      Delphi
      by himitsu, 2. Mai 2009
    und so?
    class operator FIXCOMMA64.Multiply(const Left, Right: FIXCOMMA64): FIXCOMMA64;
    const
    idiv: LongInt = 1000000000;
    asm
    mov eax, &Left
    fild qword ptr
    mov eax, &Right
    fild qword ptr
    fmulp st(1), st(0)
  • Forum: Object-Pascal / Delphi-Language

    Re: Exponent aus Extended extrahieren?

      Delphi
      by himitsu, 2. Mai 2009
    also hier (D2009)ging das so, :gruebel:

    wobei die direkte Integerversion doch eigentlich das Bessere sein sollte?

    da es sich von den Speicheradressen nix nimmt, sollte es auch so gehn
    und bei mir geht es auch. :angel2:
    uses Math;

    type PFIXCOMMA64 = ^FIXCOMMA64;
    FIXCOMMA64 = packed record
  • Forum: Object-Pascal / Delphi-Language

    Re: Exponent aus Extended extrahieren?

      Delphi
      by himitsu, 2. Mai 2009
    ich glaub ich hab erstmal 'ne Lösung für den Bereich von etwas -96038,388 bis 96038,388 reicht aber aus, da die Multiplication bei rund 9223372036 = 96038*96038 eh einen Überlauf bringt.
    (also 'ne Zahl kann natürlich auch größer als 96038,388 sein, wenn der andere Operand entsprechend kleiner ist)

    Result := (left * right) div 1000000000;
    ***überlauf***

    Result := left * (right...
  • Forum: Object-Pascal / Delphi-Language

    Re: Exponent aus Extended extrahieren?

      Delphi
      by himitsu, 2. Mai 2009
    Du weißt aber, daß du so über 'nen Extended gehst/rechnest und damit unter Umständen die letze (9.) Kommastelle einbüßt.

    In welchem Bereich liegen denn deine Werte?

    Wenn die im Bereich -9,223372036854775808 .. 9,223372036854775807 liegen, dann könnte man einfach:
    class operator FIXCOMMA64.Multiply(const Left, Right: FIXCOMMA64): FIXCOMMA64;
    var val: extended;
    begin
    Result.FBCD9 :=...
  • Forum: Object-Pascal / Delphi-Language

    Re: Exponent aus Extended extrahieren?

      Delphi
      by himitsu, 1. Mai 2009
    schau da mal in der FMath.pas die Functionen FloatConvert an.
    http://www.delphipraxis.net/internal_redirect.php?p=891540#891540

    Single 8/23
    -eEEEEEE EMMMMMMM MMMMMMMM MMMMMMMM

    Double 11/52
    -eEEEEEE EEEEMMMM MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM

    Extended 15+1/63


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=himitsu&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=133424
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz