Forum: Mikrocontroller und Digitale Elektronik Funktionsweise: Compare with Immediate (AVR)


von Markus O. (oer)


Lesenswert?

Hallo!

ich bin schon eine ganze Zeit am ueberlegen was die Anleitung fuer die 
CPI Anweisung aussagt.

Als Inputs gibt es Rd als das Register und K die Konstante mit der 
verglichen werden soll.

Einige Elemente des Stausregisters werden nun aber mit R3 oder einem 
anderen R-Wert berechnet. Nun steht da: R (Result) after Operation. Da 
das Register Rd ungeaendert bleibt, gilt dann

R = Rd ?

Oder gilt sowas komisches wie:

R = 11111111 (wenn Vergleich true)
R = 00000000 (wenn Vergleich false)

Was ich nen bischen komisch faende...

Ich hoffe da kann mir jemand weiterhelfen.

Vielen Dank und viele Gruesse
  Markus

von Matthias L. (Gast)


Lesenswert?

>CPI Anweisung aussagt.

Die cpi Anweisung ist eigentlich dasselbe wie die sbi (subract from 
immediate), nur mit dem Unterschied, dass das Ergebnis der Subtraktion 
nicht gespeichert wird. Es werden nur die Flags gesetzt.

von crazy horse (Gast)


Lesenswert?

es wird eine virtuelle Subtraktion durchgeführt, allerdings bleibt das 
Ausgangsregister unverändert (wie bei allen Compare-Befehlen, die ich so 
kenne , egal auf welchem Prozessor). Das Ergebnis des Vergleichs sieht 
man in den Flags, SREG beim AVR.

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.