Forum: Programmieren allgemein
by himitsu,
24. Jan 2009
jupp, da mußt du auch aufpassen.
EAX, ECX, EDX, EDI, ESI darfst du und jeder andre unkontrolliert verändern,
also beim Aufruf von anderen Prozeduren, solltest du dir die nötigen Felder sichern ... bzw. am Ende deiner Prozedur die sonstigen (hier nicht aufgezählten) Felder wieder herstellen.
Forum: Programmieren allgemein
by himitsu,
24. Jan 2009
nja, ist wohl alles mehr das selbe, aber mit @@xyz springst du zu @@xyz (hab oben grad gemerkt, daß ich da ein @ vergssen hatte :oops: )
und mit @xyz dann zu @xyz
mit @xyz dürfte es eigentlich nicht zu @@xyz springen :gruebel:
(dieses @ nimmt man mehr als Kennzeichnung der Labels ... der Übersichtlichkeit halber)
ist wohl ähnlich, bei beim Kennzeichnen einer Variable/Konstante mit &...
Forum: Programmieren allgemein
by himitsu,
24. Jan 2009
@xyz ist ein Sprungziel (entspricht label in Delphi)
@@xyz ist das Selbe. Nur verwendet man meißtens für prozedurinterne Sprünge @@ und für den Rest @
Aber wenn du nicht weißt, warum du mit jnz @xyz dort hin springst, dann solltest du dir lieber mal gedanken machen und die Assemblergrundlagen lernen.
jnz = jump if not zero (wird über das entsprechende Register geprüft und dieses enthält...