64'ler sayı 41, sayfa 69

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 69

Oise 1, 1 ise 0 olarak değiştirilir. Bu tür bit komutları da CMP yada TST komutu gibi Becc komutunun yardımını kullanarak çalışırfakat bu komut sadece zero flag'ı etkilediğinden sadece BEO ve BNE komutları kullanılmalıdır Örnek : . BCHG #6,$bfe00 BEO rutin Örneğimizin ilk komutunda $bfe001 adresinin 6. bitinin O olup olmadığı kontrol edilir. Eğer 0 ise zero flag biti 1 yapılır. İkinci komutta ise zero flag kontrol edilir ve bu bitin 1 olduğunu göreceğinden rutin adlı program labeliına atlanır. BCLR KOMUTU : BCLR (Test Bit and Clear) komutu belirtilen bitin O olup olmadığı kontrol edilir eğer bit O ise zero flag bitine 1 değeri yazılır. Tüm bit komutlarının aynı bit kontrol sistemine ve zero flag bitini aynı şekilde etkilediklerine dikkat edin. Örnek : BCLR BEO rutin Birinci komutta $ff00 adresinin dO'ıncı biti (dO registerinde bulunan değer) kontrol edilir. Sonuç Zero Flag'a yazılır ve birinci komutta verilen bit O yapılır. İkinci komutta ise zero flag 1 ise rutin'e atlanır. BSET KOMUTU : BSET (Test Bit and Set). Bu komut ise belirtilen bitin O olup olmadığınıkontrol eder eğer O ise zero flag'a 1 değeri yazılır Mikroprocessoe bu işlemi tamamladıktan sonra belirtilen biti

1 yaparak programın devamını sağlar. Örnek : BSET #4,$71256 ; kontrol ve bitin 1 yapılması BNE rutin dallanma Bu örnekte ise $71256 adresi- “ nin 4 üncü bitinin 0 olup olmadığı kontrol edilir. Eğer 0 ise zero flag bitine 1 değeri yazılır. Ardından ikinci komutta zero flag'in 1 olup olmadığı kontrol edilir. Eğer zero flag 1 ise rutin adlı label'a dallanılır BTST KOMUTU: BTST (Only Test Bit) komutu diğer bit komutlarından bir yönde farklıdır. Bu komutun tek farkı belirtilen biti etkilememesi sadece o biti kontrol ederek 0 olması durumunda zero flag bitine 1 değerini yazmasıdır. Tabi ki bu komutta diğer bit komutları gibi sadece zero flag bitini etkilediğinden bne yada beq komutlarından biriyle kullanılabilmektedir. Örnek BTST #6,$bfe001 ; kontrol BNE rutin — ; dallanma Örnekte, görüldüğü gibi ilk komutta $bfe001 registerinin 6 ıncı biti test edilmekte, eğer 0 ise zero flag bitine bir değerini atmaktadır. İkinci komut ise zero flag bitinin 0 olup olmadığını kontrol eder -BNE ve BEQ komutlarının arasındaki önemli farka dikkat edin- ve eğer zero flag biti 0 ise rutin label'ına atlanır. Burada dikkat edilirse CIA-A'nın sol mouse tuşunu kontrol eden bit söz konusu, böylece sol mouse tuşunun basılı olup olmadığı kontrol ediliyor, eğer button basılı değilse rutine atlanıyor... Bu komutla bit komutlarının tamamını öğrenmiş olduk. Bit komutlarının bitişi bu ayki Assembler köşesininde sonu oldu. Önümüzdeki ay yeni bir Seka Assembler köşesiyle beraber olma dileklerimizle. Eğer herhangi bir source'a ihtiyaç duyuyorsanız aşağıdaki adrese disket gönderebilirsiniz. Tabii pul koymayı da ihmal etmemelisiniz. Bu arada sayfamızda gördüğünüz Space Egg demosu Almanya'da cracker'lık faaliyetlerini sürdürmekte olan Panic grubu tarafından yapıldı. Yakında yeni demolar yapacaklarını belirten grup Türkiye'de section açma planları yapıyor. Türkiye'de de şu sıralarda BRONX, ACCURACY ve DOUBLE TROUBLE faaliyetlerini sürdürüyorlar. DOUBLE TROUBLE grubu grafiker ihtiyacı duymaktadır. Eğer iyi bir grafiker olduğunuza inanıyorsanız aşağıdaki adrese çalışmalarınızı bir diskete kopyalayarak gönderin. Disketiniz en yeni demolarla dolu olarak geri dönecektir. BAHADIR AKCAN PK 56 ACIBADEM ISTANBUL

MASTERSEKA Vi.88 by CORSAIR > >MAGAZINE : SOURCES

34 di

—c az)

a > Grafik hafi Temizlen

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