64'ler sayı 37, sayfa 56

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 56

Yopp ! İşte yazı dizimizin dördüncü bölümüyle karşınızdayız. Geçen ay bazı basit komutları incelemeye devam etmiştik. Bu ay artık BASIC'in yapı taşlarını oluşturan önemli komutlara giriş yapıyoruz. Umarım ki basit örnekleri kavramış ve zorlarına hazırlanmışsınızdır. Evet hazırsanız geçin bilgisayarınızın başına ve okumaya devam edin. Bu arada her zamanki gibi bir mektubumuz var. Yazan arkadaşımız İstanbul'dan Ömür Çulhacı. Kendisi bana bazı iltifatlarda bulunduktan sonra bazı sorular sormuş. 1-Sizin yazılarınızı izlersem ve çok çalışırsam iyi bir programcı olabilir miyim ? Yani oyun programlayabilir miyim ? Bilgisayar dersi 10 olan bazı arkadaşlarım bu işte benim yanımda olacaklarını söylüyorlar. Dişe dokunur bir şeyler yapabilir miyiz ? 2-Size poster ve kaset gönderebilir miyim ? CEVAPLAR 1-Ne demiş atalarımız : betonu delmek o kadar zor iş değil, yani insan çalışarak her şeyi yapabilir. Şimdi çok iyi BASIC öğrendikten sonra bir de C ve Assembler bilen bir insan her şeyi yapabilir. Oyun programlamak için ne yazık ki BASIC her zaman yeterli değil, özellikle bir arcade oyun yapabilmek makine dili bilgisi gerektiriyor. Ama BASIC ile yapılmış güzel oyunlar da var. Bunlar genelde grafiksiz oyunlar. (Football Director 11) Oyun programlamada bir diğer konu da şu : Ülkemizde ne yazık ki bir programcılık şirketi götürüp pazarlaman gerekiyor ki bu da oldukça zor. Türkiye'de makine dili bilenlerin çoğu bu nedenlerden dolayı cracker olmayı tercih ediyorlar. (Öhöm.) 2-Hay hay. ARİTMETİK OPERASYONLAR AMIGABASIC'te 12 değişik türde aritmetik operasyon vardır. Bunların belli bir öncelik sırası vardır. Ama matematikteki gibi parantez içine alınan bölümler önceliklidir. Yani : 2-(3-5) ile 2-3-5 aynı şey değildir. Öncelik sırasına göre tüm operasyonlar şöyledir 1- Üs alma 2 - Negatif işareti 3 - Çarpma 4 - Bölme 5 - Kalan bulma (Modulo) 6 - Toplama ve çıkarma 7 - Eşitlikler ve eşitsizlikler 8-12: BOOLEAN KOMUTLARI

Boolean komutlarını ayrı bir başlık altında detaylı olarak inceleyeceğiz. Şimdi operasyonları tek tek inceleyelim : 1- Üs alma Matematikteki X üssü Y türünden bir operasyon AMIGA'da şu biçimde kurulur : X^Y (Üs alma işaretini klavyenizde Shift + 6'ya basarak elde edebilirsiniz.) 2 - Negatif/pozitif yapma : Normal bir şekilde tanımlanan her sayı pozitif kabul edilir. 5 ile +5 aynı işlevi görürler. - işareti ile de o sayıyı negatif yaparsınız. 3 - Çarpma işlemi Çarpma işlemini yapmak için asterisk (*) işaretini kullanıyoruz. Örnek : 4 - Bölme Bölme işlemini yapabilmek için sağ shift tuşunun solundaki tuşu kullanıyoruz. Örnek olarak 26/12 ya da 263.12/(45.1412) 5 - Kalan bulma Kalan bulma, bir bölme işleminden varsa kalan sayıyı bize bildirir. Bu işlemi daha sonra göreceğiz. 6 - Toplama ve çıkarma Toplama ve çıkarma bildiğimiz türde yapılır. Örnek : 77 * (56-12) 7 - Eşitlik ve eşitsizlikler Bu konuda bilgisayarımız altı ayrı sembol kullanarak bize matematiksel kolaylıklar sağlıyor. = : Eşitlik sağlamakta kullanılır. Bir değişkene değer atamak için kullanabilir ya da karşılaştırma yaparken kullanırsınız. <> : Eşitsizlik karşılaştırmalarda kullanılır. TABLO 1'deki diğer işaretlerin tümü karşılaştırma yapılırken kullanılır. BOOLEAN KOMUTLARI (MANTIKSAL OPERATÖRLER) Boolean adında bir vatandaş tarafından icat edilen bu kurallar daha çok makine dilinde işe yaramaktadır ama BASIC'te de oldukça kullanışlıdırlar. Özellikle AND ve OR oldukça işe yarayan komutlardır. AMIGABASIC'te altı mantıksal operatör mevcuttur. Bunlar : 1-NOT 2-AND 3-OR 4-XOR 5-EQV 6-IMP TABLO 2'de bu operatörlerin kullanımı hakkında size lazım olacak bilgileri bulacaksınız. Bu komutların çoğu makine dilinde işe yararlar. IF ... THEN ... ELSE BASIC'te en çok kullanılan komutlardan bir tanesi de IF .. THEN komutudur. AMIGABASIC'te bu komut oldukça geliştirilmiş. ELSE seçeneği eklenmiş ve Block halinde komut vermeye olanak sağlanmış. Bu son seçenek hakkında dizimizin ilerleyen sayılarında daha geniş bilgi vermeye çalışacağım. IF .. THEN bir koşul komutudur. Belirli durumlarda belirli işlemler yapabilmenize olanak sağlar. Şu örneğe bir göz atın IF a=5 THEN PRINT "5" Bu örnekte a değişkeninin taşıdığı değer kontrol ediliyor ve bu değer 5 ise ekrana PRINT komutuyla 5 rakamı yazılıyor. Eğer bu değer 5'ten farklı ise herhangi bir işlem yapılmıyor. Tabii IF .. THEN komutunu alfasayısal değişkenlerle de kullanabilirsiniz. Örneğin : INPUT A$ IF A$="DOUBLE TROUBLE" THEN PRINT "BRAVO!" veya 10 INPUT "ADINIZ NEDİR ";AD$ IF AD$="" THEN 10 PRINT "Merhaba ";ad$ Örneğimizde AD$ değişkenine bir şeyler giriyoruz. Sonra AD$ değişkeninin boş olup olmadığını belirliyoruz. Eğer değişken boş ise 10 numarasını verdiğimiz satıra gidiyor. Değil ise içeriği ekrana basılıyor. IF .. THEN komutunun diğer özelliklerini gelecek sayımızda göreceğiz. Şimdi AMIGABASIC'te program yazarken dikkat edilmesi gereken önemli bir husus, label'lar. LABEL Label'lar assembler'da olduğu gibi AMIGABASIC'te de bulunuyorlar ve bizi satır numarası derdinden kurtardıkları için onlara müteşekkiriz. Satır numarası kullanmadan program yazarken programın belli bir bölümüne label yardımıyla isim verebiliyoruz ve gerektiğinde bu label'ı adıyla çağırabiliyoruz. Örnek isterseniz : başlangıç: PRINT "MERHABA" anaprogram: son: END Bu örnekte üç adet label kullanıyoruz. Sizin de fark ettiğiniz gibi label adlarının önünde iki nokta bulundurma zorunluluğu mevcut. İstediğimiz zaman GOTO komutuyla bu label'ları çağırabilme olanağımız mevcut. BRANCH (DALLANMA) KOMUTLARI Assembler yazısını takip ediyorsanız hatırlarsınız, ilk sayılarda bu başlık altında orada Assembler dilindeki dallanma komutlarını vermiştik. Bu komutlar programın içinde bir yerden bir yere atlamak istediğiniz zaman kullanılan komutlardır. GO TO komutu GO TO komutu kendisini izleyen parametreye göre belirlenen bir yere atlar. Eğer belirtilen bölge programda yoksa Undefined line ya da Undefined label hata mesajlarını alırsınız. Go to komutu bir label ya da bir satır numarası tarafından takip edilir. Eğer bu parametreler eksikse Syntax Error hata mesajını alırsınız. Örnek 10 print "ABCDEF" 20 goto 10 Örnek 2: 10 20 if a=5 then goto 50

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