Seite 2 von 2

Verfasst: 28.03.2005 02:09
von Deeem2031
Klar doch:

Code: Alles auswählen

x$="x_string"
y$="y_string"

!PUSH [v_x$] ; Schreibt den Pointer von x$ in den Stack und setzt die StackPosition 4 weiter
!PUSH [v_y$] ; Schreibt den Pointer von y$ in den Stack und setzt die StackPosition 4 weiter
!POP [v_x$] ; Setzt den Pointer von x$ auf den Wert aus dem Stack und setzt die StackPosition 4 zurück
!POP [v_y$] ; Setzt den Pointer von y$ auf den Wert aus dem Stack und setzt die StackPosition 4 zurück

Debug "x ist nun der " + x$
Debug "y ist nun der " + y$

Code: Alles auswählen

x$="x_string" 
y$="y_string" 

!MOV Eax, [v_y$] ;Schreibt den Pointer von y$ in den Register Eax
!XCHG [v_x$], Eax ;Tauscht den Inhalt von Eax und den Pointer von x$ aus
!MOV [v_y$], Eax ;Setzt den Pointer von y$ auf den Wert im Register Eax

Debug "x ist nun der " + x$ 
Debug "y ist nun der " + y$

Verfasst: 28.03.2005 02:29
von zigapeda
Danke <)

Verfasst: 28.03.2005 10:52
von auxxon
Es soll für ganz normale bytevariablen werden. :wink:

Verfasst: 28.03.2005 12:26
von zigapeda
Für eine Bytevariable oder nicht, am einfachsten ist es wenn du wie schonmal gesagt eine Hilfsvariable nimmst:

Code: Alles auswählen

a.b = 20
b.b = 40
hv = a
a = b
b = hv
Das ist zwar nicht die schnellste lösung aber die einfachste.

Verfasst: 28.03.2005 14:40
von auxxon
THX