Bu sayfadaki yazılar
Sayfanın metni
Sayfa 4
DOP: double NOP
Bu komutlar yaptıkları işlem bakımından NOP komutundan farksızdır. Fakat, iki byte sürerler. Burada ikinci byte dikkate alınmaz.
$04, $14, $34, $44, $54, $64, $74, $D4, $F4, $80 $89, $93
ISC: increment and subtract with carry
Şu işlemler yürütülür: INC SBC
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: ISC OP | $E7 | ZP | 2 ISC OP,X | $F7 | ZPX | 2 ISC OP | $EF | ABS | 3 ISC OP,X | $FF | ABX | 3 ISC OP,Y | $FB | ABY | 3 ISC (ZP,X) | $E3 | (ZP,X) | 2 ISC (ZP),Y | $F3 | (ZP),Y | 2
KIL: Killer codes
Bu komutlar sistemin 'crash' etmesine yolaçar. Böyle durumlarda, RUN/STOP-RESTORE kombinasyonu da bir işe yaramaz. Ya bilgisayarları kapatır açarsınız, ya da resetlersiniz (bir reset switch yardımıyla).
$02, $12, $22, $32, $42, $52, $62, $72, $B2, $D2, $F2
LAR: load accu, and wiht stack-register, transfer result to accu, X-register and stackregister.
Bu işlemler yürütülür: LDA AND (yığın göstergeci ile) TAX TXS
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: LAR OP,Y | $BB | ABY | 3
LAX: load to accu and X-register
Şu işlemler yürütülür: LDA TAX
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: LAX OP | $A7 | ZP | 2 LAX OP,Y | $B7 | ZPY | 2 LAX OP | $AF | ABS | 3 LAX OP,Y | $BF | ABY | 3 LAX (ZP,X) | $A3 | (ZP,X) | 2 LAX (ZP),Y | $B3 | (ZP),Y | 2
NOP: no operation
Aşağıdaki komutlar, SEA kodlu NOP komutu ile her bakımdan özdeştir.
$1A, $3A, $5A, $7A, $DA, $FA
RLA: rotate left, AND with accu and store accu.
Şu işlemler yürütülür: ROL AND STA
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: RLA OP | $27 | ZP | 2 RLA OP,X | $37 | ZPX | 2 RLA OP | $2F | ABS | 3 RLA OP,X | $3F | ABX | 3 RLA OP,Y | $3B | ABY | 3 RLA (ZP,X) | $23 | (ZP,X) | 2 RLA (ZP),Y | $33 | (ZP),Y | 2
RRA: rotate right and add with carry.
Bu işlemler yürütülür: ROR ADC
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: RRA OP | $67 | ZP | 2 RRA OP,X | $77 | ZPX | 2 RRA OP | $6F | ABS | 3 RRA OP,X | $7F | ABX | 3 RRA OP,Y | $7B | ABY | 3 RRA (ZP,X) | $63 | (ZP,X) | 2 RRA (ZP),Y | $73 | (ZP),Y | 2
SLO: shift left and OR with accu.
Şu işlemler yürütülür: ASL ORA
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: SLO OP | $07 | ZP | 2 SLO OP,X | $17 | ZPX | 2 SLO OP | $0F | ABS | 3 SLO OP,X | $1F | ABX | 3 SLO OP,Y | $1B | ABY | 3 SLO (ZP,X) | $13 | (ZP,X) | 2 SLO (ZP),Y | $03 | (ZP),Y | 2
SRE: shift right and EOR with accu.
Şu işlemler yürütülür: LSR EOR
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: SRE OP | $47 | ZP | 2 SRE OP,X | $57 | ZPX | 2 SRE OP | $4F | ABS | 3 SRE OP,X | $5F | ABX | 3 SRE OP,Y | $5B | ABY | 3 SRE (ZP,X) | $43 | (ZP,X) | 2 SRE (ZP),Y | $53 | (ZP),Y | 2
TOP: triple NOP
Aşağıdaki komutlar da NOP komutunun bir türüdür. Tek farkları üç byte sürmeleridir. İkinci ve üçüncü byte'ları önemsizdir.
$0C, $1C, $3C, $5C, $7C, $DC, $FC
Geciyoruz ikinci tabloya.
ADC: add with carry
Hafızanın içeriğini aküye, carry'yi de kullanarak topla, sonucu aküye al.
Flaglar: N Z C I D V + + + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt ADC #OP | $69 | IM | 2 | 2 ADC OP | $65 | ZP | 2 | 3 ADC OP,X | $75 | ZPX | 2 | 4 ADC OP | $6D | ABS | 3 | 4 ADC OP,X | $7D | ABX | 3 | 4 ADC OP,Y | $79 | ABY | 3 | 4 ADC (ZP,X) | $61 | (ZP,X) | 2 | 6 ADC (ZP),Y | $71 | (ZP),Y | 2 | 5
AND: AND accu
Hafızanın içeriğini, aküyle AND'le, sonucu aküye al.
Flaglar: N Z C I D V + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt AND #OP | $29 | IM | 2 | 2 AND OP | $25 | ZP | 2 | 3 AND OP,X | $35 | ZPX | 2 | 4 AND OP | $2D | ABS | 3 | 4 AND OP,X | $3D | ABX | 3 | 4 AND OP,Y | $39 | ABY | 3 | 4 AND (ZP,X) | $21 | (ZP,X) | 2 | 6 AND (ZP),Y | $31 | (ZP),Y | 2 | 5
ASL: arithmetic shift left
Hafızanın içeriğini bir bit pozisyonu sola kaydır.
Flaglar: N Z C I D V + + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt ASL | $0A | Accu | 1 | 2 ASL OP | $06 | ZP | 2 | 5 ASL OP,X | $16 | ZPX | 2 | 6 ASL OP | $0E | ABS | 3 | 6 ASL OP,X | $1E | ABX | 3 | 7
BCC: branch if carry clear
Carry biti sönükse dallan.
Flaglar: N Z C I D V hiçbiri
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt BBC OP | $90 | REL | 2 | 2
BCS: branch if carry set
Carry biti yanıksa dallan.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 5
Flaglar: N Z C I D V hiçbiri
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt BCS OP | $B0 | REL | 2 | 2
BEQ: branch if equal (to zero)
Son yapılan işlemin sonucu sıfırsa dallan.
Flaglar: N Z C I D V hiçbiri
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt BEQ OP | $F0 | REL | 2 | 2
BIT: test bits
Hafıza ile aküyü AND'le, sonuca göre flag'ları oluştur.
Flaglar: N Z C I D V + + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt BIT OP | $24 | ZP | 2 | 3 BIT OP | $2C | ABS | 3 | 4
BMI: branch if minus
Son yapılan işlemin sonunda yedinci bit yanıksa dallan.
Flaglar: N Z C I D V hiçbiri
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt BMI OP | $30 | REL | 2 | 2
BNE: branch if not equal (to zero)
Son yapılan işlemin sonucu sıfır değilse dallan.
Flaglar: N Z C I D V hiçbiri
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt BNE OP | $D0 | REL | 2 | 2
BRK: break
Programın durması ve break vektörü üzerinden atlama
Flaglar: N Z C I D V B +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt BRK | $00 | — | 1 | 7
BVC: branch if overflow clear
Son yapılan işlemin sonunda taşma yoksa dallan.
Flaglar: N Z C I D V hiçbiri
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt BVC OP | $50 | REL | 2 | 2
BVS: branch if overflow set
Son yapılan işlemin sonunda taşma varsa dallan
Flaglar: N Z C I D V hiçbiri
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt BVS OP | $70 | REL | 2 | 2
CLC: clear carry
Carry bitini söndür.
Flaglar: N Z C I D V +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt CLC | $18 | — | 1 | 2
CLD: clear decimal mode
Ondalık mod bitini söndür.
Flaglar: N Z C I D V +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt CLD | $D8 | — | 1 | 2
CLI: clear interrupt disable bit
Interrupt'a izin vermeyen biti söndür.
Flaglar: N Z C I D V +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt CLI | $58 | — | 1 | 2
CLV: clear overflow flag
Taşma flag'ını söndür.
Flaglar: N Z C I D V +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt CLV | $B8 | — | 1 | 2
CMP: compare with accu
Hafızanın içeriğini, aküyle karşılaştır.
Flaglar: N Z C I D V + + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt CMP #OP | $C9 | IM | 2 | 2 CMP OP | $C5 | ZP | 2 | 3 CMP OP,X | $D5 | ZPX | 2 | 4 CMP OP | $CD | ABS | 3 | 4 CMP OP,X | $DD | ABX | 3 | 4 CMP OP,Y | $D9 | ABY | 3 | 4 CMP (ZP,X) | $C1 | (ZP,X) | 2 | 6 CMP (ZP),Y | $D1 | (ZP),Y | 2 | 5
CPX: compare with X-register
Hafızanın içeriğini, X-registeriyle karşılaştır.
Flaglar: N Z C I D V + + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt CPX #OP | $E0 | IM | 2 | 2 CPX OP | $E4 | ZP | 2 | 3 CPX OP | $EC | ABS | 3 | 4
CPY: compare with Y-register
Hafızanın içeriğini, Y-registeriyle karşılaştır.
Flaglar: N Z C I D V + + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt CPY #OP | $C0 | IM | 2 | 2 CPY OP | $C4 | ZP | 2 | 3 CPY OP | $CC | ABS | 3 | 4
DEC: decrement
Hafızanın içeriğini bir eksilt.
Flaglar: N Z C I D V + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt DEC OP | $C6 | ZP | 2 | 5 DEC OP,X | $D6 | ZPX | 2 | 6 DEC OP | $CE | ABS | 3 | 6 DEC OP,X | $DE | ABX | 3 | 7
DEX: decrement X-register
X-registerinin içeriğini bir eksilt.
Flaglar: N Z C I D V + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt DEX | $CA | — | 1 | 2
DEY: decrement Y-register
Y-registerinin içeriğini bir eksilt.
Flaglar: N Z C I D V + +
Adresleme Tipleri
Assembler: | Kod: | Kısaltma: | Byte: | Takt DEY | $88 | — | 1 | 2