Sayı sistemleri, bilgisayarların temelini oluşturur. Eğer
bir bilgisayarı yakından tanımak isterseniz atmanız gereken ilk adımlardan biri
sayı sistemlerini incelemektir.
En çok tercih edilen sayı sistemleri; ikili (binary), sekizli (octal),
onlu (decimal) ve onaltılı (hexadecimal) sistemlerdir.
Biz matematiksel işlemlerimiz için decimal sitemi
kullanılırız (0,1,2,3,4,5,6,7,8,9). Bilgisayarlar ise binary sistemi
kullanılır (0 ve 1). Binary sistemin tercih edilme nedeni; elektronik
devrelerde kolay uygulanabilmesi ve yapılan denemeler sonucunda diğer
sistemlere göre daha verimli olmasıdır.
Aşağıdaki tabloda sayıların diğer sistemlerde ifade ediliş şekilleri verilmiştir.
Dönüşümler
61 onluk tabandaki (sistemdeki) bir sayıdır. Bu sayısı
ikilik tabana çevirmek için yapılması gereken işlem; onluk tabandaki sayıyı
ikinin kuvvetleri şeklinde ifade etmektir.
61 = 32 + 16 + 8 + 4 + 1
Bu ifadeyi (sırasıyla);
şeklinde yazabiliriz. Bu yazım sonrasında
katsayılarımız 111101 dir. Bu da 61
sayısının binary sistemde karşılığıdır.
Bu işlemin tersini uyguladığımızda binary
sistemdeki bir sayıyı decimal sisteme dönüştürmüş oluruz.
0.1875 onluk tabandaki kesirli sayıyı
ikilik tabana çevirirken, ondalık kısmı çevirmek istediğimiz taban değeri ile
çarpılır. Bu işlem tam sayı elde edilene kadar devam edilir.
0.1875 * 2 = 0.375
0.375 * 2 = 0.75
0.75 * 2 = 1.5 (Ondalık kısım ile çarpmaya devam edilir.)
0.5 * 2 =1.0
İşlem sonucunda elde edilen tam kısımlar
yukarıdan aşağıya doğru yazıldığında sayının ikilik tabandaki değeri bulunmuş
olunur.
Diğer sistemlere dönüşümlerde aynı
şekilde yapılmaktadır. Deneyerek göre bilirsiniz.
Bilgisayar sadece toplama işlemi
yapmaktadır. Çarpma işlemini art arda toplama ile yapar. Çıkarma işlemini de
sayının negatifi ile toplama işlemi yaparak gerçekleştirir. Bölme işlemi de
yine benzer biçimde devam eder.
Peki, sayıları negatif yapmanın yolu
nedir?
Tümleme işlemi yaparak pozitif bir sayı
negatif hale dönüştürülür. İki çeşit tümleme yolu kullanılır; Bire ve İkiye
Tümleme. En çok tercih edilen yöntem, daha kullanışlı olması nedeniyle ikiye
tümlemedir.
Bire Tümleme (One’s Complement)
Bu yöntemde pozitif sayıdaki 0 yerine 1,
1 yerine 0 yazılarak tümleme yapılır ve negatif sayı elde edilir.
0110 = 6
1001 = -6
Şimdi bir çıkarma işlemi örneği yapalım.
5-3=2 işlemini bire tümleme ile
hesaplayalım.
5 = 0101
3 = 0011 -3 = 1100
0101
+
1100
=
10001 (taşan bit)
Taşan bit, bire tümleme yönetimde sonuca eklenir. Yani,
0001 + 1 = 0010 = 2 (5-3=2)
İkiye Tümleme (Two’s Complement)
Bu yöntemde önce bire tümleme yapılır daha sonra tümleme
sonucuna 1 eklenir.
0110 = 6
1001 + 1 = 1010 = -6
Şimdi çıkarma işlemi örneği tekrar
yapalım.
5-3=2 işlemini ikiye tümleme ile
hesaplayalım.
5 = 0101
3 = 0011 -3 = 1101
0101
+
1101
=
10010 (taşan bit)
Taşan bit, ikiye tümleme yönteminde dikkate alınmadan silinir. Sonuç, 0010 = 2 dir.