AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ASM-Register auf 64 Bit erweitern

Ein Thema von fLaSh11 · begonnen am 28. Jan 2008 · letzter Beitrag vom 30. Jan 2008
Antwort Antwort
Seite 1 von 2  1 2      
fLaSh11
(Gast)

n/a Beiträge
 
#1

ASM-Register auf 64 Bit erweitern

  Alt 28. Jan 2008, 19:03
Hallo DPler,

in Balus Tutorial lernen wir, wie wir das Register EAX auf 64 Bit erweitern (Befehl: CDQ).
Wie realisiere ich das für das Register EDX oder ECX?

MfG
Steffen
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: ASM-Register auf 64 Bit erweitern

  Alt 28. Jan 2008, 19:07
(IIRC) Garnicht. EAX:EDX ist die einzige mögliche Kombination.
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: ASM-Register auf 64 Bit erweitern

  Alt 28. Jan 2008, 19:13
Tausche doch vorher oder nachher die Register mit XCHG etwas aus. Wozu brauchst du dass denn?
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#4

Re: ASM-Register auf 64 Bit erweitern

  Alt 28. Jan 2008, 19:18
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
$2B or not $2B
  Mit Zitat antworten Zitat
fLaSh11
(Gast)

n/a Beiträge
 
#5

Re: ASM-Register auf 64 Bit erweitern

  Alt 28. Jan 2008, 19:31
ich wollte in EAX, EDX 32bit-Int speichern und in ECX ne 64er. Aber dann muss ich halt durchtauschen...

Trotzdem vielen Dank.
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: ASM-Register auf 64 Bit erweitern

  Alt 28. Jan 2008, 19:45
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.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
fLaSh11
(Gast)

n/a Beiträge
 
#7

Re: ASM-Register auf 64 Bit erweitern

  Alt 28. Jan 2008, 20:18
Zitat von sirius:
Beachte aber, dass du diese Erweiterung auf 64bit primär nur bei Punktoperationen brauchst.
Jo, ich will halt ne 64-bit Varaible mit ner 32-bittigen multiplizieren.

//Edit:
Der Beitrag hier verwirrt mich voll total
Also:
Ich erweitere EAX auf 64-bit.
Hab ne 32-bittige Zahl in EDX.
Jetzt will ich multiplizieren und in EAX speichern!

Ich bekomms einfach nicht hin...
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#8

Re: ASM-Register auf 64 Bit erweitern

  Alt 28. Jan 2008, 21:52
Zitat von fLaSh11:
Ich erweitere EAX auf 64-bit.
Hab ne 32-bittige Zahl in EDX.
nein, wenn du EAX auf 64 bit erweiterst, dann wird diese in EAX und EDX gespeichert

Int64Rec.Lo = EAX
Int64Rec.Hi = EDX

also du kannst dann keine weitere Zahl in EDX ablegen, da EDX belegt ist.
$2B or not $2B
  Mit Zitat antworten Zitat
fLaSh11
(Gast)

n/a Beiträge
 
#9

Re: ASM-Register auf 64 Bit erweitern

  Alt 28. Jan 2008, 22:17
Okay! Vielen herzlichen Dank. Ich habe verstanden und es funktioniert!
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#10

Re: ASM-Register auf 64 Bit erweitern

  Alt 29. Jan 2008, 12:32
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
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:38 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