CMP             Compare Accumulator – Akkumulator mit Wert vergleichen

Der Vergleichsbefehl CMP führt eine Subtraktion aus und verwirft das Zahlenergebnis, setzt allerdings die Flags. Ein gesetztes Zero-Flag bedeutet, dass der Wert gleich ist. Wenn der Wert im Akkumulator größer oder gleich ist, wird das Carry-Flag gesetzt. Das Negativ-Flag wird gesetzt, wenn Bit 7 des Ergebnisses der Subtraktion gesetzt ist.

ModusSyntaxHexLängeZyklen
unmittelbarCMP #$11C922
Zero PageCMP $22C523
Zero Page,XCMP $33,XD524
absolutCMP $4400CD34
absolut,XCMP $5500,XDD34+
absolut,YCMP $6600,YD934+
indirekt,XCMP ($77,X)C126
indirekt,YCMP ($88),YD125+
+ ... zusätzlicher Taktzyklus bei erhöhtem Hi-Byte
 
beeinflußte Flags
N Negativ-Flag
Z Zero-Flag
C Carry-Flag