Archiv verlassen und diese Seite im Standarddesign anzeigen : Habe da mal ne Fräge....
Atmelbeginne
25.08.2008, 14:49
Hallöchen
Ich muss feststellen das ich mich schneller als gedacht mit assembler zurechtgefunden habe. Doch leider habe ich da ein kleines Problem bei dem ich alleine nicht weiter komme.
Ich möchte gerne 2 Register vergleichen. Gibt es einen Befehl dafür:
Beispiel:
RegA = RegB
Wenn ja dann goto a
Vielen Dank im voraus
Zieh die Inhalte voneinander ab. Wenn das Ergebnis Null ist (breq bzw. brne), ist auch der Inhalt gleich.
Atmelbeginne
25.08.2008, 16:25
Danke für die schnelle Antwort. Auf das Subtrahieren bin ich schon gekommen =D>
Waran erkenne ich das das Ergebnis =0 ist? Im Simulator kann ich nicht erkennen das sich nach der Rechnung ein Flag ändert.
Die Befehle breq oder brne kennt assembler nicht.... :-s
Gibt es einen Befehl z.B: if Register = 0 dann tu das.
Ich habe bisher nur Befehle gefunden die das Restister Bitweise kontroliert
Statusbits zurücksetzen
MOVF registerA, 0
SUBWF registerB, 0
nun sollten die statusbits C; DC und Z gesetzt sein wenn beide werte gleich...
Im Datenblatt Seite 127...
MfG
Atmelbeginne
25.08.2008, 20:36
Kann ich das mit dem Z Flag so verstehen, das bei allen Rechenoperationen die 0 ergeben das Flag gesetzt wird?
Atmelbeginne
25.08.2008, 20:38
Frage hat sich erledigt. Habe den entsprechenden Hinweis bei Sprut gefunden.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.