Commodore sayı 48, sayfa 23

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 23

Örnek olarak akümülatörde $0A ve $1500 adresinde de $09 değeri olsun. AND (ve) bağlantısı şu şekildedir: Akümülatör: $0A = 0000 1010 $1500: $09 = 0000 1001 AND: 0000 1000

Sonuç $08'dir. Z-Bayrağında işlemin sonucu sıfıra eşit olmadığı için 1 değeri görülür. Bu örnek sonucunda BIT komutuyla $1500 adresindeki değerin 1 ve 3 no.'lu Bit'lerinin 0 olup olmadığını kontrol ettirmiş olduk. Burada yardımcı sayı olarak akümülatöre yüklediğimiz $0A değerini kullandık. Sonuçta bize her iki Bit'in de silinmemiş olduğunu bildirmektedir. Böylelikle aynı yöntem kullanılarak istenen adresteki Bit'ler kontrol ettirilebilir. BIT komutunun bundan başka özellikleri de vardır. Kontrol ettirilen bellek adresinin 6 ve 7 no.lu Bitleri statü registerindeki iki bayrağa aktarılır: Bit 7 N-Bayrağına ve Bit 6 V-Bayrağına Bu şekilde örneğin istenen bir adreste negatif bir sayı bulunup bulunmadığını kontrol edebiliriz. Her üç bayrağın da Branch komutları ile sorulabileceği için BIT komutu çok yönlü olarak kullanılabilir. CLV: Bu komut “Clear Overflow-Flag”, yani “Taşma-Bayrağını sil” anlamına gelmektedir ve 1 bayt uzunluğundadır.

NOP: NOP komutunun karşılığı “No Operation”dır. Bilgisayar bu komut ile karşılaştığında hiçbir şey yapmaz. Sadece program sayacı bir sonraki satıra atlar ve bu arada 2 çevirimlik

(cycle) zaman geçer. Genelde çok kısa bekleme süreleri yaratmak için kullanılır. Ayrıca makine dili bir program yazarken belli bir alanı doldurmak için veya hata arama işleminde de kullanılabilir. Bitmiş programlarda pek yer almaz. TAX, TAY, TXA ve TYA Program yazarken bazen registerleri ve akümülatörü kendi aralarında değiştirmek gerekir. Birçok işlem (Toplama, Çıkartma ...) sadece akümülatörde gerçekleşir. Eğer böyle bir operasyonu X Registerinin içerdiği değer ile gerçekleştirmek istersek TXA komutunu kullanarak bu değeri akümülatöre kaydırabiliriz. TXA'nın anlamı “Transfer X into Accumulator” yani “X'i akümülatöre transfer et”tir. Aynı şekilde TYA, Y-Registerinin değerini kaydırırken TAX ve TAY komutları da tam ters işlemi yapmakta, yani akümülatörün değerini istenen registere aktarmaktadır. Bu transfer işleminde eski değerler kaybolur ve bir daha geri gelmez. Ayrıca bu işlemler sırasında N- ve Z- Bayrakları da değişikliğe uğrayabilir. Bu son dört komut da birer baytlıktır. Bu aylık hoşçakalın...

Klavyeyle gezinmek için ← ve → tuşları.