Dijital teknolojide kapasiteler niçin 4, 8, 16, 32, 64, 128, 256 diye gider?
Yıllar önce Mete Arif Tokmak’a dijital fotoğraf ile kimyasal fotoğraf arasındaki fark konusunda yazı hazırlama sözü vermiştim. Aklımın bir köşesinde sürekli duruyordu… Bu yazı onun başlangıcı olsun… Herkesin anlayabileceği dille dijital elektroniğin temel bilgisi diyebiliriz. Sadece sabredip okumak gerekecek. Anlatıp anlatamadığımı ben de cidden merak ediyorum…
* * *
Bilgisayar ya da diğer sayısal (dijital) sistemlerde bit, bayt büyüklükleri vardır. Temeli ikili sayı sistemine dayanır. Örneğin bir telde elektrik akımı varsa bir kenara 1, yoksa 0 yazalım. Telde akımın olması bir bilgi, olmaması başka bir bilgidir. Demek ki bir tel (bir bit) ile iki farklı bilgiyi tanımlayabiliriz. Şöyle düşünün evinizde odasında hastanız yatıyor, siz de salondasınız. Araya bir hat çektiniz ve hatta ampül taktınız. Aranızda anlaştınız; ampül yanıyorsa hasta sizi çağırıyor, yanmıyorsa çağırmıyor.
Arada tek bir tel ile yani 1 bit ile iki farklı bilgi aktarmış oluyorsunuz.
Şöyle özetleyebiliriz:
Akım var (1) = Hastanız sizi çağrıyor.
Akım yok (0) = Çağrılmıyorsunuz.
Yani 1 bit, iki bilgi…
Peki ikiden daha çok bilgi alışverişi yapmak istersek? O zaman bir tel (hat) yerine iki tel kullanırız.
İki tel ile kaç farlı bilgi aktarabiliriz? Cevap 4. Nasıl?
Şimdi hastamızın elinde iki anahtar var. Bunlara A ve B isimlerini verelim. Hasta ile bir anlaşma yapmamız lazım. Örneğin iki anahtarı da açarsa yalnız seni çağırıyor. İkisini de kapatırsa herşey yolunda.
İlkini açıp, ikincisini kaparsa su istiyor, ilkini kapatır ikincisini açarsa elma istiyor.
Tablosunu yapalım:
A açık – B açık (1-1) = Yanıma gel
A kapalı – B kapalı (0-0) = Herşey yolunda.
A açık – B kapalı (1-0) = Su getir.
A kapalı – B açık (0-1) = Elma getir.
Yeniden düzenleyelim:
(1-1) = Yanıma gel.
(1-0) = Su getir.
(0-1) = Elma getir.
(0-0) = Herşey yolunda.
Şimdi iki tel yani 2 bit ile dört bilgi alışverişi yapabiliyoruz.
Şimdi işi bilgisayarla birleştirelim.. Türkçe alfabenin küçük büyük harflerinin toplamı 29+29=58, matematiksel işlemler için 10 adet rakam, artı, eksi, bölü, çarpı işaretleri, nokta, virgül, eşittir, noktalı virgül, iki nokta üst üste, dolar sembolü vs klavyede bulunan tüm sembollerin toplam sayısı kaç adetse onların hepsini kodlamak için kaç bitlik bilgi aktarımı gerekir?
Bunun için yukarıdaki deneyi 3 bit için genişletelim: 3 bit, üç tel, üç anahtar gibi düşünüp bunlara A,B,C diyelim. Bunların her biri açıksa 1, kapalıysa 0 olsun.
Herbir anahtarın iki değer ifade ettiğini yani iki farklı değer alabileceğini unutmayarak yukarıdaki tabloyu tekrar oluşturalım. Bakalım kaç farklı durum olacak?
A B C
———
1-1-1 = Yanıma gel
1-1-0 = Su getir
1-0-1 = Beni gezdir
1-0-0 = Çay getir
0-1-1 = Telefonu getir
0-1-0 = Gazete getir
0-0-1 = Pencereyi aç
0-0-0 = Herşey yolunda.
Toplam 8 farklı bilgi… Farklı istek yani bilgi sayısı 8’den fazla olsun istenirse, örneğin “Bana kitap oku” isteğini de eklemek istersek 3 bitin yanına bir bit daha ilave etmek yani tel sayısını 3’den 4’e çıkarmak lazım. Bu durumda bilgi sayısını 8’den 2⁴=16’ya çıkarmış oluruz. Bana 10 bilgi yetiyor diyebilirsiniz ancak sistemde 3’den sonra 4 tel (bit) olabilir. 3,5 üçbuçuk tel (bit) diye bir şey mümkün değil. 4 tel olunca da bilgi sayısı 16 olabiliyor.
Şimdi en baştan başlayalım;
1 bit 2 bilgi
2 bit 4 bilgi
3 bit 8 bilgi…
Matematikte bunu şöyle gösterebiliyoruz:
2¹ = 2
2² = 4
2³ = 8
2¹ bir tane 2 demek. 2² iki tane 2’nin birbiriyle çarpılması, 2³ üç tane 2’nin birbiriyle çarpılması demek.
2¹ = 2
2 × 2 = 4
2 × 2 × 2 = 8
Şimdi buradan kural çıkarabiliriz: Dört farklı tel yani hat yani bit ile aktarılabilecek bilgi sayısı,
2⁴ = 2×2×2×2 = 16
Beş farklı tel ile,
2⁵ = 2×2×2×2×2 = 32
Devam edelim, altı tel ile,
2⁶ = 2×2×2×2×2×2 = 64
2⁷ = 2×2×2×2×2×2×2=128
2⁸ = 2×2×2×2×2×2×2×2 = 256
Üstteki işlemlerdeki 2’ye taban diyoruz. 2’nin üstündeki küçük yazılmış rakamlara da üs diyoruz. En son yazdığımız iki üssü sekizdir. Değeri 256’dır.
İlk yıllarda bilgisayarlar 8 bitlik idi. Yani a,b,c, …, +×÷=, …, #$%^& vs gibi 256 farklı sembol tanımlanabiliyordu. ASCII kodları denen sembollerin sayısı o yüzden 256’dır. Yukarıdakine benzer olarak diyelim siz 257 farklı sembol (bilgi) tanımlamak istiyorsanız 8 bitin (telin) yanına bir tane daha tel (koymalısınız). Bu durumda 2⁹ = 512 farklı bilgi tanımlayabilirsiniz. Ama bana 257 yetiyordu 512 nerden çıktı diyebilirsiniz ama bitleri birer tel gibi düşünürseniz sekizbuçuk (8,5) tel olmuyor 8 telin yanına bir tel daha koyduğunuzda ise tanımlayabileceğiniz bilgi sayısı 256’dan 512’ye çıkıyor.
Görüldüğü gibi bit sayısı ile tanımlanabilecek bilgi sayısı üstel artmaktadır.
2⁹ 256’nın iki katı yani 512,
2¹⁰ 512’nin iki katı yani 1024 olur.
İşte bilgisayar işlemcilerinin 32 bit ya da 64 bit olması aynı anda kaç farklı bilgiyi tanımlayabileceğini gösterir.
Aynı şekilde RAM kapasitelerinin 32 GB, 64 GB, 128 GB, 256 GB gibi değerlerle ifade edilmesinin arka planında bu bilgi vardır. Bir telden akım geçiyorsa 1, geçmiyorsa 0… Yukarıda bahsettiğimiz taban yani 2 işte buradan gelmektedir. Devrede yan yana kaç tane tel varsa o kadar bit, kaç bit varsa, iki üssü bit kaça eşitse o kadar farklı bilgi var demektir.
Not: Bu yazıda anahtar açık/kapalı deyimleri ders kitaplarında anlatılanın tersidir. (Tersliğin sebebini de başka bir yazıda anlatırım.) Elektronik bilgisi olanlara göre komik bir yazı olduğunun farkındayım ama amacım hiç teknik bilgisi olmayanlara hitabetmektir.. 😊
Mustafa Eyriboyun
16/17 Nisan 2021