Bu sayfadaki yazılar
Sayfanın metni
Sayfa 2
Herkese merhaba, bu sayımızdan itibaren eski dostumuz C64 ile konuşabileceğimiz bir dil olan BASIC derslerine başlayacağız. (1 dil bir insan, 2 dil insan) bu gıcık espriyi yaptıktan sonra dersimize geçelim. Öncelikle bilinmesi gereken bilgisayarın temel yapısı; bu yapıyı çözdükten sonra BASIC öğrenmek çok kolaylaşacaktır, zira programcı olmanın temeli budur. Bilgisayarın 5 ana ünitesini inceleyelim: 1) Giriş ünitesi (INPUT), 2) Çıkış ünitesi (OUTPUT), 3) Bellek Ünitesi (MEMORY), 4) Aritmetik Mantık Ünitesi (ARITHMETIC LOGIC UNIT A.L.U), 5) Yönetim Ünitesi (CENTRAL PROCESSING UNIT C.P.U)
Bilgisayar elektronik bir makinedir diyoruz. O halde nasıl oluyor da bir dizi aritmetik işlem, alfabetik bilgi akımı mümkün oluyor? Temelde iki çeşit elektrik sinyalinden bahsetmekteyiz. Bunlar düşük voltajlı sinyal ve yüksek voltajlı (genelde 5 volt) sinyalleridir. Elektrik dilinde iki nokta arasında potansiyel enerji farkı varsa voltaj farkı da vardır. Bu prensibe dayanarak “bit”ler dediğimiz 0 ve 1’leri oluşturmak mümkündür. Eğer voltaj farkı sıfır volt ise 0 “bit”ini, voltaj farkı 5 volt ise 1 “bit”ini oluşturmuş oluruz. ”Bit”lerin 8 tanesi bir arada olursa 1 “byte” denir. Bütün harfleri bir dizi 0 ve 1’leri bir araya getirerek yani kodlama sistemini kullanarak oluşturmak mümkündür.
PROGRAMLAMAYA GİRİŞ Bilgisayarı programlanabilen bir makine olarak düşünmek gerekir. Yapılan işler hız- lı ve hacim itibariyle kabarıkta olsa, programı basamak,basamak alırsanız her işlemin çok basit olduğunu görürsünüz. İlk programı küçük bir hesap makinesi ile de rahatça yapı- labilecek bir işlem üzerinde kuralım. Bilgisayara iki tane rakam verelim ve bu rakamları toplayarak neticesini ekrana yazmasını isteyelim. 10 INPUT A 20 INPUT B 30 LET TP=A+B 40 PRINT TP 50 END
Yukarıdaki programa bakınca ilk dikkat edilen özellik, programın satırlardan oluşması ve her satırın da bir numara ile başlamasıdır: örneğin 10, 20... gibi. Bu numaralara satır numaraları (Statement Number) denir. Satır numaraları küçükten büyüğe doğru artar. Bu düzenlemeyi bilgisayarın kendisi yapmaktadır. Satır numaraları 1 ile 63999 arasında tam sayı ve pozitif olan sayılardır. Programın akışına göre düzenlenmelidirler. Yani A ve B’nin değerini vermeden, toplamı oluşturan TP değerini hesaplamak mümkün olamayacağından, programdaki 30 no’lu satıra 10 numarası vermekle çalışabilen bir program yapmak mümkün değildir. Dikkat edilecek bir diğer özellikte satır numaralarının onar onar artmış olmasıdır. Bu numaralar birer birer arttırılabilirdi ve program da pekâlâ çalışırdı. Bu değerin onar onar arttırılmasındaki amaç, eğer ileride araya başka satırlar ilave etmek gerekirse programın genel akışını bozmadan bunu gerçekleştirmek içindir. Aksi halde ilave edilen satırdan sonraki satırların numaralarını tekrar düzenlemek gerekecektir. Demek ki programın genelinde bir değişiklik yapmadan 10 no’lu satırla 20 no’lu satır arasına 11, 12, 13, 14, 15, 16, 17, 18, 19 nolu satırları ilave etmek mümkündür.
INPUT, LET, PRINT komutları
10 numaralı satırı biraz daha detaylı inceleyelim. INPUT A: input komutu ile A basit değişkeninden oluşmaktadır. INPUT komutu (girdi) anlamına gelmektedir. Bilgisayar dilinde INPUT kendisinden sonra gelen değişkenin, bu durumda A’nın sayısal değerini klavye yolu ile vermek için kullanılır. Programın tamamını bilgisayarın hafızasına girdikten sonra programı çalıştırmak için RUN komutunu yazıp RETURN tuşuna basmak gerekir. Bu durumda bilgisayar ilk olarak 10 INPUT A satırını
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 3
C64 TÜRKİYE #8 3 okuyacaktır. Satırda INPUT komutu olduğundan bizden A değişkenini isteyecektir. Bunu belirtmek için de ekrana bir soru işareti yazar. A değişkeninin değeri 5 olsun, şimdi 5 yazıp RETURN tuşuna basın. Bu işlemi yaparken yazılan 5 rakamını ekranda görmek mümkündür. İleride göreceğimiz gibi bilgisayar A değişkeni için hafızasında ayırdığı yere 5 rakamını yerleştirecektir.
Bilgisayar daha sonra ikinci satır olan 20 INPUT B satırına geçecektir. Burada ki durum da ilk satıra benzediği için ekranda soru işareti görülecektir. Bu demektir ki bilgisayar B değişkeninin değerini istemektedir. B değişkeninin değeri 3 olsun, 3 yazıp RETURN tuşuna basarak bu işlemi de tamamlayalım. Bilgisayar bir sonraki satırda bilgileri değerlendirmeye başlayacaktır. 30 LET TP = A + B satırında LET komutu kendinden sonraki verilen ifadenin geçerli olmasını mümkün kılan bir deyimdir. Burada TP denilen bir değişken daha vardır. Hemen belirteyim, değişkenlerin bir harf ile olması şartı yoktur. A, B değişkenler olduğu gibi TP de bir değişkendir. TP = A + B ifadesi ile bilgisayara deniliyor ki A değişkeninin değeri ne ise onu al, B değişkeninin değeri ne ise onu da al, topla ve bu toplamı TP değişkeni ile ifade edilen hafızaya yerleştir. Bu da LET komutu kullanılarak yapılır. Bazı bilgisayarlarda LET komutunu kullanmaya gerek yoktur. O zaman bu satır 30 TP = A + B şeklindedir. O halde 30 numaralı satırdan sonra bilgisayar TP adında bir değişken oluşturdu. Bu değişkene ait olan hafızada A ve B’nin sayısal toplamı olan 8 vardır. 40 PRINT TP satırındaki PRINT komutu kendisinden sonra gelen değişkenin sayısal değerini ekrana yazmak için kullanılır. Bilgisayar ekrana bağlı değil de printer’a bağlı ise TP değişkeninin sayısal değeri bu defa kağıt üzerine yazılacaktır. Ekran kullandığımıza göre ekrana 8 rakamı yansıyacaktır. Demek ki 50 END satırındaki END komutu programın sonu geldiğini gösterir. Her programın sonunda END komutunu kullanmak gerekir.
PROGRAMIN ÇALIŞTIRILMASI Her satırı yazıp hafızaya yerleştirdikten sonra programı çalıştırmak için RUN komutunu yazmak gerekir. Şimdi RUN yazın, ekranda çıkacak işlem aşağıdaki gibi olacaktır. ? 5 ? 3 8 5 ile 3’ün toplamı 8’dir. Bilgisayar daha sonra hazır anlamına gelen READY mesajını yazarak kontrolü kullanıcıya bırakır.
LIST, Satır Numaraları ve Program Akışı Daha önce de belirttiğim gibi satır numaraları küçükten büyüğe doğru artar. Bu artış onar onar olabileceği gibi birer birer de olabilir. Satır numaraları programın akışına göre düzenlenmelidirler. Numaralama yanlış yapıldığında aşağıdaki örnekte olduğu gibi yanlış netice alınacaktır.
Bilgisayar bu satırları hafızasına aldıktan sonra satır numaralarına göre sıraya koymaktadır. Hafızada ne olduğunu görmek için yani programı listelemek için LIST deyimi kullanılır. Şimdi LIST yazıp RETURN tuşuna basalım: 10 INPUT A 15 LET TP=A+B 30 INPUT B 40 PRINT TP 50 END Bu programa RUN demek mümkün olmayacaktır. Sebebi ise bilgisayar 15 no’lu satıra geldiği zaman B değişkeninin değerini bilmediği için toplama işlemini yapamayacaktır. (HADES’in notu: C64’te eğer sayısal bir değişkene herhangi bir değer verilmeden o değişkenle işlem yapılması durumunda değişkenin değeri sıfır kabul edilerek işlem yapılır.) O halde programdaki satırlara numara verirken, numaralar problemin çözümü için gereken işlem sayısına paralel olarak artmalıdır. Bence en iyisi programı yazarken önce satır numaralarını küçükten büyüğe doğru sıralamalı, sonra yazı kısımlarını işlem sırasına göre doldurmaktır. BASİT DEĞİŞKENLER Evet arkadaşlar bu aylık benden bu kadar, önümüzdeki dersimizde (Aritmetik Operatörler, İfadeler ve Komparatörler) REMARK ve PRINT komutlarını inceleyip bol bol örnekler göreceğiz. Buraya kadar gördüğünüz gibi BASIC dili çok kolay anlaşılır bir dildir, her ne kadar günümüzde pek kullanılmasa da bazen bize gerekebilecek ve en önemlisi 68K işlemcili bilgisayarlarda süper iş görecek sade ve stabil bir dildir. Önümüzdeki sayıda görüşmek üzere, BİR COMMODORE ALIN ONUNLA KALIN ☺