Commodore sayı 77, sayfa 19

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 19

Ya da n basamaklı bir sayı için:

ONLUK - BI 4 811 x B2 4 B2 4 812 xB3 * 4 ...4 8İ(n-1)x Bn

Tabii ki basamakların sağdan başlayıp sola doğru arttığını göz ardı etmemelisiniz. Aslında günlük hayatta hiçbir önemi olmayan bu sayı sistemlerinin hepsini öğrenmenize de gerek yok. Bilgisayarda sıkça kullanılan sayı sistemi ikilik ve onaltılık sistemlerdir. Niçin sadece bu iki sistemin önemli olduğunu bitler ve baytlar kavramlarını açıklarken tam olarak anlayacaksınız. Ama ilk önce ikilik ve onaltılık sistemlere biraz detaylı olarak göz atalım:

İkilik (Binary) Sayı Sistemi

Eğer demin anlattığım “sayı sistemleri” kavramını biraz anladıysanız, ikilik sayı sistemlerinin rakam bakımından oldukça fakir kalmış olduğunu farkedersiniz. Bu sistemde sadece 0 ve 1 rakamları hüküm sürebilir, çünkü 1'den sonra 2 değil 10 gelecektir. Kafanızın karışmaması için değişik sayı sistemlerindeki 10'u “on” olarak okumayın. “Bir Sıfır” demeye üşenebilirsiniz, ama “Sıfır, bir, on, onbir, yüz, yüzbir, ...” diye saymaktan çok daha az kafa karıştırıcı olacaktır. Çok uzun yıllardır onluk sayı sistemi kullanılan bir yerde yaşadığınız için, bu sayılarla yapılan toplama, çıkarma, çarpma ve bölme işlemlerini doğrudan doğruya ikilik sayılar üzerinde yapamayabilirsiniz. Bu yüzden, bir şekilde sayıları onluk düzenden ikilik düzene ve ikilik düzenden onluk düzene çevirebilmelisiniz. Bu sayede sayıları ilk olarak onluk düzene çevirip, işlemi yapıp sonucu ikilik sisteme çevirebilirsiniz. Aslında işlemler ikilik sistemde de onaltılık sistemde de onluk sistemde aynı kurallara bağlıdır. Eğer kendinizle tutarlı davranırsanız, bu çevirme işlemine hiç bulaşmadan da tüm işlemleri gerçekleştirebilirsiniz. İsterseniz, sayı çevirme işine önce daha basit olanından, yani ikilik sistemden onluk sisteme çevirme kısmından başlayalım: Demin de bulduğumuz formülü kullanarak ikilik sayıların onluk karşılığını bulalım:

4212 xB44...

Burada, Bi, B2, ..., Bn yalnızca 0 ya da 1 olabildiği için, Bk terimi toplamaya 2.(k- 1) değerini ekleyecektir, ya da toplamı etkilemeyecektir. İsterseniz basit bir örnek yapalım artık:

90110101 (fi tarihinde yapılmış bir kabul sonucu “o işareti gelecek olan sayının ikilik olduğunu belirtir) ikilik sayısını onluk sisteme çevirelim. Formülümüze göre

ONLUK-142x04212x1-4213x0-421 4x14255x1

Kolay değil mi? Şimdi de tam tersini nasıl yapacağınızı göstereceğim. Ondalık bir sayıyı ikilik bir sayıya çevirirken kullanılan standart bir metod vardır: Sayı önce ikiye bölünür ve kalan, bir yere not edilir. Daha sonra bölüm de ikiye bölünür ve kalan bir yere not edilir. Bu işlem, bölüm | olana kadar devam eder. Sonra başa (en sola) bir adet 1 yazılır ve kalanlar sondan başa doğru sayının sağına eklenir. Tablo 1'de 53 sayısının ikilik düzene nasıl çevrildiğini görebilirsiniz.

Onaltılık (Hexademical) Sayı Sistemi

Aynı işlemler onaltılık sayı sistemleri için

-de geçerlidir. Yalnızca, formülde yer alan tüm 2'lerin yerine onaltı yazmalısınız. Yani:

ONLUK 4... 4 x Bn

Tabii ki basamaklarda 10 ve sonrasındaki rakamları yazmak için yeni bazı şekillere ihtiyacımız olacak. Bu rakamlar için garip garip şekiller icad etmek yerine, alfabemizde yer alan tanıdık şekillerin ilk altısını kullanmak çok daha makul ve mantıklı. Sonuç olarak onaltılık sayılar şekilde sıralanırlar: 0,1,2,3,4,5,6,7,8, 9, A,B,C,D, E, F, 10,... Alışana kadar biraz garip gelecek tabii, ama bu sistemi o kadar sık kullanacaksınız ki sonunda ““Neden onluk yerine onaltılık sistem kullanmıyoruz?” diye hayıflanacaksınız. Örneğin $FA (aynı fi tarihinde $'ın da onaltılık sayıları göstermesi kararlaştırılmış) sayısının onluk karşılığını bulalım:

ONLUK - $A 416x$F-10416x15-250

Bir de 250 sayısının 16'lık karşılığını bulalım. Ama bunun için Tablo 3'e bakmalısınız. İkilik ve onaltılık sayılar üzerine söylenebilecek çok şey bulunabilir, ama bu kadarı başlangıç için yeterli. Daha sonra, yeri geldikçe bu konulara değineceğiz. Şimdi biraz da bilgisayarla ilgili kavramlara bulaşalım:

19 1111 1010 EL 15 - 10-2 $ A - $SFA

Bit, Bayt (ya da Byte) ve Nibble

Bilgisayarınızın digital bir devre olduğunu biliyorsunuz. Digital devrelerin özelliği, bir telde bulunan sinyalin ya | ya da 0 olmasıdır. Yani elektronik bir ikilik sistemden başka bir şey değildir. Biz bu tellerin her birinde bulunan değere bir bit adı veriyoruz. Daha matematiksel olarak ifade etmemiz gerekirse, ikilik sistemdeki bir sayının her basamağına bir bit denir.

C-64'ünüz, kendisiyle yaşıt olan bilgisayarların çoğu gibi sekiz bitlik hatlarla veri iletir. Bu yüzden belleğinde sakladığı değerler en fazla sekiz bit uzunluğunda olabilir. Bellekte saklanan bu değerlere her seferinde “sekiz bit” demek yerine bir bayt demek genelde tercih edilir. Ufak bir hesapla, bir baytın alabileceği en yüksek değerin 255 olacağını bulabilirsiniz artık. Ama bu 255'in olmasından başka bir özelliği daha vardır: $FF olması. En büyük sayı olan 255 bile iki basamakla yazılabildiği için, onaltılık sistem, baytların değerlerini göstermek için idealdir. Bu yüzden makine diliyle uğraşan her insan ilk olarak onaltılık sistemle yakınlaşmaya çalışır. “Neden onluk değil de onaltılık sistem kullanılıyor?”” sorusu çoğunuzun kafasını şu anda kurcalıyor olmalı. Aslında sadece bir çeşit gösterim kolaylığı. 0-255 arası sayılar bir, iki ya da üç basamaklı ondalık sayılar olarak yazılabilirler. Oysa genel bir kabul olarak, bu sayılar ne olursa olsun, iki basamaklı onaltılık sayılar şeklinde yazılır. Yani 0 sayısı her zaman $00 olarak yazılır. Bu da görüntüde bir güzellik sağlar.

Bir de onaltılık sayılarla ikilik sayılar arasında geçiş yapmanın kolaylığı göz ardı edilemez. Onaltılık sayıların her basamağı tam dört adet bitten oluşur ve bu basamakların her birine bir nibble adı verilir. Tablo 4'e bir göz atarsanız Nibble'lardan yararlanarak onaltılık sistemle ikilik sistem arası sayı değişiminin nasıl yapılabileceğini görebilirsiniz. Bu aylık benden bu kadar. Artık temel konularda fikir sahibi olduğunuza göre gelecek saayıdan itibaren makine dili öğrenmeye başlayacağız. Bu ayki konunun sıkıcılığına aldanmayın, makine dili öğrenmek eminim çok hoşunuza gidecektir. Biz sadece ge-

Gelecek aya kadar bu onaltılık ve ikilik sayı sistemlerine biraz daha çalışın ki, konular başladığında bu konular geçtiğinde şaşırmayın.

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