Commodore sayı 11, sayfa 60

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 60

Özetlemekle başlayalım:

Şimdiye kadar iki komut gördük: PRINT ve INPUT komutları. Bunlardan birincisi veri çıkış, ikincisi ise giriş komutu. Özellikle PRINT komutunun, neredeyse kendi başına bir bilgisayar dili oluşturacak kadar güçlü bir komut olduğunu söylemiştik. Sanırım PRINT komutunun kontrol karakterleri ile birlikte kullanılmasını göstermek için verdiğimiz örnekler, bu konuda sizi de ikna etmiştir. Ancak bu komutların ve genel olarak BASIC'in hakkıyla kullanılabilmesi için, çıkışı ve girişi yapılan verilerin bilgisayarın içinde nasıl saklandığının da bilinmesi gerekir. Bu yüzden geçen bölümümüzün büyük bir kısmını sayı sistemlerine, özellikle de iki tabanlı sayı sistemine (binary code) ayırdık.

Bit ve Bayt

Geçen sayıdan hatırlayacaksınız: 2 tabanlı sayı sisteminde her sayı 0 ve 1 simgeleriyle gösterilir. Bu iki simgeden her birine bit adı verilir. Yani iki sayı sisteminde yazılmış bir sayının her basamağına bir bit tekabül eder. Bilgisayarda her bit elektriksel bir sinyaldir, bit 1 değerini aldığında sinyalin yüksek düzeyi (y), 0 değerini aldığında ise alçak (a) düzeyi alır. Örneğin, 35 sayısının iki tabanlı gösterimi 00100011 şeklindedir. Her bitin hangi değeri ifade ettiği, konumu tarafından belirlenir. Dolayısıyla birinci konumdaki bitin değeri 1, üçüncü konumdaki bitin değeri ise 0'dır. İkinci konumdaki bit de gerçi 1, yani “yüksek” düzeyini almıştır ama konumundan ötürü 2 değerini ifade eder. Hepsi 1 değerinde olan 8 bitlik bir dizi, bir baytla ifade edilebile-

İskender SAVAŞIR

Öyleyse bir baytın en yüksek değeri:

(3)

WA

255'tir, yani bir baytın alabileceği en yüksek sayı değeridir. Bir sayının bilgisayarın içinde temsil edilebilmesi için, sayıyı oluşturan bit miktarı kadar elektrik bağlantısına ihtiyaç vardır. 8 bitlik bir sayıda 8 bağlantının her biri, temsil ettiği bitin durumunu belirtir. C-64'ün veri taşıtı (data bus) da 8 bitliktir. (Bu taşıttaki bitler 0'dan 7'ye kadar numaralandırılır.) Bu ne anlama gelir? Bir defada minik işlemciye iletilebilecek en yüksek değerin 255 olduğu anlamına... Uygulamada bu yeterli değildir. Bu kısıtlamayı aşmak için özel devreler birkaç baytı birleştirip daha büyük sayıların işlenmesini olanaklı kılarlar.

Ancak siz BASIC gibi yüksek düzeyli bir dil kullanırken bütün bunlarla uğraşmak zorunda değilsiniz. BASIC'in çeviricisi, belli bir bilgiyi saklamak ya da işlemek için minik işlemciye kaç defa ulaşmak gerekiyorsa, otomatik olarak o kadar defa ulaşır. Ancak (PEEK ve POKE komutları aracılığıyla) minik işlemcideki bir sicile (register) ya da RAM'ın (yani yazılabilir/okunabilir belleğin) belli bir bölgesine doğrudan doğruya ulaşmak istediğinizde, artık bir bellek bölgesinin ya da bir sicilin kaç bayt içerebileceğini, bunların nasıl saklandığını bilmek zorunda kalacaksınız. C64

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