Forum: Mikrocontroller und Digitale Elektronik simpler Vergleich zweier Register


von Haar Schneider (Gast)


Lesenswert?

hiho

ich bin grad etwas hilflos wenns um die Befehle geht. Gibt es im Web
irgendwo mal eine Erklärung mit Syntax-Beispielen?
Ansonsten: mit welchem Befehl vergleiche ich 2 Registerinhalte. Wenn
beide gleich sind, soll z.B. die nachfolgende Zeile übersprungen
werden.

von andi (Gast)


Lesenswert?

(MSP430 -> www.ti.com    slau56e.pdf)

        CMP   R5,R6 ; R5 = R6?
        JEQ   EQUAL ; YES, JUMP
        xxx
EQUAL

von Jan (Gast)


Lesenswert?

Welche Hardware benutzt du? Welche Programmiersprache verwendest du?

Für den Fall Atmega und Assembler:

Hier http://www.atmel.com/atmel/acrobat/doc0856.pdf
findest du eine Übersicht mit allen Befehlen.

Du vergleichst zwei Register mit
CP R1, R2
Anschließend kannst du das Ergebnis des Vergleichs auswerten, z.B. mit
den BR**-Befehlen, die, falls die Bedingung erfüllt ist, zu einem
angegebenen Label springen.


Für den speziellen Fall oben gibts auch was eigenes:
CPSE R1,R2  "Compare, Skip If Equal"

von Rolf Magnus (Gast)


Lesenswert?

> mit welchem Befehl vergleiche ich 2 Registerinhalte.

Das hängt vom Prozessor ab.

> Wenn beide gleich sind, soll z.B. die nachfolgende Zeile
> übersprungen werden.

Bei AVR wäre das CPSE (ComPare and Skip if Equal).

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.