![]() |
ASM-Register auf 64 Bit erweitern
Hallo DPler,
in Balus ![]() Wie realisiere ich das für das Register EDX oder ECX? MfG Steffen |
Re: ASM-Register auf 64 Bit erweitern
(IIRC) Garnicht. EAX:EDX ist die einzige mögliche Kombination.
|
Re: ASM-Register auf 64 Bit erweitern
Tausche doch vorher oder nachher die Register mit XCHG etwas aus. Wozu brauchst du dass denn?
|
Re: ASM-Register auf 64 Bit erweitern
jupp, ist nicht möglich ... delphi ist nur ein 32-bit-Kompiler, also maximal 32 Bit.
wozu brauchst du das denn? PS: die MMX-Register sind 64-bittig |
Re: ASM-Register auf 64 Bit erweitern
ich wollte in EAX, EDX 32bit-Int speichern und in ECX ne 64er. Aber dann muss ich halt durchtauschen... :drunken:
Trotzdem vielen Dank. |
Re: ASM-Register auf 64 Bit erweitern
Beachte aber, dass du diese Erweiterung auf 64bit primär nur bei Punktoperationen brauchst. Für Strichoperationen kannst du die 64bit hinlegen wo du willst.
|
Re: ASM-Register auf 64 Bit erweitern
Zitat:
//Edit: Der ![]() Also: :arrow: Ich erweitere EAX auf 64-bit. :arrow: Hab ne 32-bittige Zahl in EDX. :arrow: Jetzt will ich multiplizieren und in EAX speichern! Ich bekomms einfach nicht hin... |
Re: ASM-Register auf 64 Bit erweitern
Zitat:
Int64Rec.Lo = EAX Int64Rec.Hi = EDX also du kannst dann keine weitere Zahl in EDX ablegen, da EDX belegt ist. |
Re: ASM-Register auf 64 Bit erweitern
Okay! Vielen herzlichen Dank. Ich habe verstanden und es funktioniert!
|
Re: ASM-Register auf 64 Bit erweitern
Wie es funktioniert ? Du kannst also einen 64Bit Wert mit einem 32Bit Wert multiplizieren und bekommst dann einen 96Bit Wert raus ? Probiere doch mal (2^62-1) * (2^30-1) zu multiplizieren, und das in einem 64Bit Datentyp zu speichern.
Gruß Hagen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz