Bu sayfadaki yazılar
Sayfanın metni
Sayfa 53
Mantık İşlemleri
Buraya kadar mümkün bütün sayısal bilgilerin ve aralarındaki ilişkilerin bilgisayarda 2 tabanlı sayı sistemi ile temsil edildiğini gördük. Sayısal bilgilerin bu şekilde temsil edilebilmesini mümkün kılan, bilgisayarı oluşturan elektrik devrelerindeki sinyalin yüksek düzeyinin 1 rakamına, alçak düzeyinin ise 0 rakamına tekabül ediyormuşçasına yorumlanabilme imkânıdır. Fakat bilgisayar sadece sayısal bilgileri değil, diğer başka bazı cins bilgileri de işleyebilir. Tek şart bu bilgilerin elektrik sinyalleri tarafından temsil edilebilmesidir. İşte bu yüzden doğru ya da yanlış olabilecek bütün cümleler de, bilgisayar tarafından işlenebilir. Bu durumda, cümlenin doğru olma hali, elektrik sinyalinin yüksek düzeyine (ya da 2 tabanlı sayı sisteminde 1 rakamına), cümlenin yanlış olma hali ise, sinyalin alçak düzeyine (yani 2 tabanlı sayı sisteminde 0 rakamına) tekabül eder.
Peki, bilgisayar ya doğru ya da yanlış olabilecek cümleleri saklayabilir, diyoruz. Bu cümlelerle ilgili olarak daha fazla ne yapabilir? Birkaç cümleden çıkacak sonucun ne olabileceğini söyleyebilir mi? Doğruluğu ya da yanlışlığı kabul edilmiş bir dizi cümleden ne gibi sonuçların çıkarılabileceğini tespit edebilir mi? Bu soruyu cevaplandırabilmek için, cümlelere özgü birleştirme kurallarını gözden geçirmemiz lazım. Yani farklı cümleler üzerinde ne gibi işlemler yapılabileceğini bilmemiz lazım. İşte, 2 değerli, yani sadece doğru ya da yanlış olabilen cümlelerin tamamına Boole cebiri işlemleri ve bu işlemlerin birleştirme kuralını gösteren işaretlere de Boole cebiri işaretleri denir. Bilgisayar, sayısal olmayan bilgiler üzerinde işlem yaparken, bu işlemleri kullanır. Bu işlemlerin işareti genellikle işlemin İngilizce adından oluşur.
VE işlemi: AND
Örnek olarak iki cümle alalım: “Yağmur yağıyor” ve “Sokaklar ıslak”. Şimdi bu iki cümleyi “ve” kelimesi ile birleştirerek yeni bir cümle elde edebiliriz: “Yağmur yağıyor ve sokaklar ıslak”. Eğer ilk iki cümlemizin her ikisi de aynı anda doğruysa, o zaman “ve” işleminin sonucunda elde ettiğimiz cümle de doğrudur. Yok eğer, cümlelerden herhangi biri yahut her ikisi birden yanlışsa, o zaman bu cümlelerden hareketle “ve işlemi” sayesinde elde ettiğimiz sonuç cümlesi de yanlıştır. O halde ve işleminin mümkün sonuçlarını aşağıdaki gibi bir tabloyla gösterebiliriz:
Yağmur yağıyor — Sokaklar ıslak
<ox<Uu
Yağmur yağıyor ve sokaklar ıslak
<<<
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 52
Dear Basic Öğren
Bu noktaya kadar değişken kavramını ve değişken türlerini gördük. Ayrıca geçen sayımızda, sayısal değişkenlerin bilgisayar içinde nasıl depolandıklarını da gözden geçirdik. Ancak daha ilk baştan da söylediğimiz gibi, bilgisayar yalnızca sayısal değişkenler üzerinde aritmetik hesaplar yapmakla kalmaz; karakter zinciri dediğimiz türden “harfsayısal” (alphanumeric) değişkenleri kabul ederek, onlar üzerinde de işlem yapabilir. Sıralama, arşiv, database vb. programlarının çoğu bilgisayarın bu yeteneğinden yararlanmaktadır. Peki nasıl oluyor da, yalnızca 1 ve 0'ları tanıyabilen bu alet harfler, kelimeler ve cümleler üzerinde de böyle karmaşık işlemler yapabiliyor.
Konuya bir iki mantık ilkesini gözden geçirerek başlayacağız. Çünkü BASIC'in de temelinde klasik mantığın “Boole cebiri” diye anılan bir formelleştirilmesi yatmaktadır.
Mantığın Temeli: Karşılaştırma
Bütün mantıksal işlemlerin temelini verilerin karşılaştırılması oluşturur. Karşılaştırmanın sonucuna bağlı olarak hangi işlerin yapılacağına karar verilir. Örneğin ödemeleri hesaplayan bir programı ele alalım. Birçok başka program gibi, bu programın da ne zaman duracağını bilmesi gerekir. Bunu sağlamak için makineden gelen her kaydı (örneğin ödeme yapılacak kişilerin isimlerini) “SON” adlı bir veriyle karşılaştırması istenebilir. Karşılaştırmanın sonucu olumsuz ise program işlemesini sürdürecek, yok eğer olumlu ise belirli bir sinyali gönderdikten sonra duracaktır. Kimi bakımlardan mantıksal işlemler aritmetik işlemlere benzetilebilir. Bu benzerliği biraz daha ayrıntılı olarak gözden geçirelim. Herhangi bir aritmetik işlemde birbirinden farklı üç birimin varlığından söz edebiliriz:
— İşlenenler — İşlem işareti — İşlemin sonucu
Aritmetik işlemlerde işlenenler, hesaplamada kullandığımız sayılar, işlem işaretiyse, ne tür bir işlemin yapılacağını belirten simgedir. Sonuç ise bu işaretin gösterdiği işlem sayesinde işlenenlerden çıkarılan sayıdır.
Örneğin, 5+3=8 problemini ele alalım. Sonuç (8), işlenenlere (yani 5 ve 3'e) + (toplama) işleminin uygulanmasıyla bulunmuştur. İşareti değiştirdiğimiz, örneğin +'yı - yaptığımız takdirde, aynı işlenenler bu defa başka bir 10 tabanlı sayıyı, 2 sayısını vereceklerdi. Bu noktadan hareketle farklı işlem biçimlerini (toplama, çıkarma, çarpma, bölme gibi) farklı birleştirme kuralları olarak düşünebiliriz. Çünkü bu işlemler belirli bir sayılar grubuyla, yani işlenenlerle, başka bir sayılar grubunun, yani sonuçların nasıl bir araya getirilebileceğini belirleyen kurallardır. İşte işlem işareti bu kuralı ifade eder.