habe noch nie das Carry bit benutzt
Das ist schlecht, Carry -> Übertrags-flag
wenn Du 1000 mit 1000 vergleichen tust wird kein Carry gesetzt,
999 mit 1000 schon
Ein Tip,
AVR-Studio vorhanden ? wenn ja schreib Dir dieses kurze Programm
Code:
ldi R16,50
ldi R17,40
vergleiche:
cp R16,R17
inc R17
rjmp vergleiche
Setze ein break bei cp und führe das Programm in Debugger aus,dabei beobachtest Du den Inhalt/Zustand von SREG und R16,R17 Registern.
Besseren Lerneffekt findest Du nirgendwo, achja, bringe in Erfahrung was Die anderen Flags in SREG zu sagen haben.
Das ganze im Zusammenspiel mit brcs brcc brsh brlo brmi usw. bringt Dir die Lösung.
Wenn immernoch nicht dann fragen, oder von Erfolgen berichten!

Gruß Sebastian