Einzelnen Beitrag anzeigen

Benutzerbild von Memnarch
Memnarch

Registriert seit: 24. Sep 2010
737 Beiträge
 
#1

(F)ASM: Flag zustand in register speichern?

  Alt 15. Mär 2012, 21:56
Nabend allerseits.
Wusste nicht genau wo es es am besten hinpasst. Hoffe die Frage passt hierhin:

Ich nutze seit kurzem FASM(Flat Assembler). Jetzt habe ich ja die möglichkeit zuerst über cmp einen wertevergleich machen zu lassen, und danach über abhängige jump befehle das resultat zu prüfen.

Jetzt ist es aber so, dass ich mehrere cmp befehle ausführen möchte und die ergebnisse davon verodern oder ver-unden möchte.

im moment würde es z.B. bei mir so aussehen:

Code:
cmp eax, ebx
jne IsFalse
push 1
jmp end
IsFalse:
push 0
end:
Somit hätte ich den zustand für später auf dem stack um dann nach einem zweiten prozedere vom selbigen später beite zustände verbinden könnte.
Aber so wie jetzt kann es nicht ganz sinn der sache sein oder?

Ich weiß, dass es noch pushf/popf gibt, aber das pusht mir doch gleich den gesammten flagregister rauf bzw holt in wieder runter.

Interressieren tut mich aber immer nur ein einzelnes(wenn ich das richtig im Kopf habe, gibts für jeden zustand(größer, kleiner, gleich, größergleich...) ein flag.

Hat da jemand eine Idee?

MFG
Memnarch
Da man Trunc nicht auf einen Integer anwenden kann, muss dieser zuerst in eine Float kopiert werden
  Mit Zitat antworten Zitat