Herwig Siebenhofer
 / Home / 6502
 
6502 Op-Codes

   • ADC
   • AND
   • ASL
   • BCC
   • BCS
   • BEQ
   • BIT
   • BMI
   • BNE
   • BPL
   • BRK
   • BVC
   • BVS
   • CLC
   • CLD
   • CLI
   • CLV
   • CMP
   • CPX
   • CPY
   • DEC
   • DEX
   • DEY
   • EOR
   • INC
   • INX
   • INY
   • JMP
   • JSR
   • LDA
   • LDX
   • LDY
   • LSR
   • NOP
   • ORA
   • PHA
   • PHP
   • PLA
   • PLP
   • ROL
   • ROR
   • RTI
   • RTS
   • SBC
   • SEC
   • SED
   • SEI
   • STA
   • STX
   • STY
   • TAX
   • TAY
   • TSX
   • TXA
   • TXS
   • TYA

Archiv

   • Kurzübersicht
   • Zahlentabelle
   • 6502 Varianten
   • 6502 Register
   • Adressierungen
   • illegale Ops
   • 6502 Bugs
 

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