HI
Wie kann ich eine grösser oder gleich Abfrage am einfachsten
realisieren? Ich muss eine Abfrage haben, die ein 16- Bit Register
überprüft, ob es grösser oder gleich 10'000 ist!!! Wie kann ich ein 16-
Bit Register vergleichen???
thanks IZU
so wie's aussieht gibt's da keine funktion für...
ich würd (vielleicht) einfach 10000 von den registern abziehen.
also seien die regs wieder Xh und XL.
10'000=0x2710
dann ziehste 0x27 von XH ab, und dann 0x10+Carry von XL. dann checkst du
das Zero-Flag. Wenn das gesetzt ist, war die zahl in XH:XL gleich
10'000. Wenn das carry flag gesetzt ist (dann ist XL untergelaufen), war
die zahl größer.
vielleicht geht's einfacher, wenn also jemand ne idee hat, würd mich
auch interessieren.
Gute n8
>Wenn das carry flag gesetzt ist (dann ist XL untergelaufen), war die zahl größer.
es muss natürlich heißen:
Wenn das carry flag gesetzt ist (dann ist XL untergelaufen), war die
zahl kleiner, wenn beide flags (Z und C) nicht gesetzt sind, war die
zahl größer als 10'000.
Vielen Dank für die Antwort!!!!
Jedoch funzt es bei mir immer noch nicht, ist es nicht so, dass der BRLO
Befehl springt, wenn das Carry Bit gesetzt ist???
Das Carry Bit wird also nur abhängig vom High Byte gesetzt!!! Darum
erkennt diese Abfrage diese 10'000 nicht!!!!
Oder sehe ich das falsch???
Vielen Dank!
Izoard
ich habe nun den Vergleichs- Wert um eins verkleinert, nun spring er
auch, wenn es gleich ist....
Noch eine Frage:
Wenn ich nun das ganze mit 100 machen möchte,
könnte ich doch mit dem CPI XL, 0x64 vergleichen und dann mit BRSH
springen???? Wieso geht das bei mir nicht???
Funktioniert CPI mit XL nicht???'
IZo