Bilgisayar Bilimleri -8- Veri ve İkilik Sayılar

Daha önceki başlıklarda bilgisayar bilimlerinin merkezinin “Veri” olduğundan bahsetmiştik. Bütün donanım ve donanım üzerine yazılan yazılım bu veriyi işlemek, yönlendirmek ve kaydetmek üzerine kuruluydu. Bilgisayar bilimlerini incelediğimizde veriyi merkeze aldığımız zaman diğer konuların katman katman kümelendiğini görebiliriz. Katmanlar kısaca şöyle özetlenebilir.

  • İletişim
  • Uygulama
  • İşletim Sistemi
  • Programlama
  • Donanım
  • Bilgi

Bu sıra en alttan en üste doğru okunmalıdır. Sistemin en alt katmanında bilgi yer almakta ve temel konumunda yer almaktadır. Bilginin üzerinde yer alan donanım bilginin varlığını desteklemekle beraber program ile bilginin arasındaki ilişkiyi sağlamaktadır. Uygulamaların ise işletim sistemi sıraya koyar, düzenler ve çalıştırır. İşletim sistemi bütün uygulamaların üzerinde yer alan bir programdır. Biz uygulamalar arasında iletişimde bulunduğumuz İnternet gibi iletişim yolları da en üst katmanda yer almaktadır. Burada en temel nokta bilgi olduğu için bilgiyi ele alarak konumuza devam edeceğiz. Aslında bilgi ve donanım konusunu dijital elektronik ve mikroişlemci mimarisi yazılarımızda anlatsak da burada bir daha kısaca üzerinden geçmek istiyoruz.

Veri

Veriler olmadan bilgisayarlar hiçbir anlam ifade etmez ve bir işe yaramaz. Bilgisayar adından da anlaşılacağı üzere bilgi üzerinde işlem yapan bir alettir. Bilgiyi okur bilgiyi işler ve bilgiyi yazar. Bilgiden başka bir şey üzerinde işlem yapamaz. Biz bilgisayar bilimlerinde bilgi (information) demek yerine data (veri) deriz. Bilgisayarlarda veriler aynı bizim harflerin birleşimi ile temsil ettiğimiz ve kitaba yazdığımız yazılar gibi sembolik olarak kaydedilir. Yalnız bu temsil işlemi bilgisayarların basit yapısından dolayı durumlar halinde olmaktadır. Biz sayı değerlerini rakamlarla, daha karmaşığını sembollerle, yazıyı değerlerini alfabe ile daha karmaşığını ise noktalama işaretleri ile ifade ederiz. Hatta konuşmalarımızda kullandığımız vurgu, ton, el hareketleri ve mimikler de bizim karmaşık bir bildirişime sahip olduğumuzu göstermektedir. Bilgisayarlara baktığımızda ise sadece iki durum yani “VAR” ya da “YOK” ifadelerinin olduğunu görürüz. Biz bu durumların eğer mantık işlemleri yapıyorsak “DOĞRU” ya da “YANLIŞ” eğer sayısal işlemler yapıyorsak ise “1” veya “0” olarak temsilini yaparız. Bilgisayarların “1” ve “0” ile çalıştığı da doğru değildir bu bakımdan. Örneğin RAM bellekteki flip-floplarda elektrik varsa biz buna “1” deriz elektrik yoksa buna “0” deriz. Kısacası bilgisayar sistemi tamamen aptal olduğu için bu yorumlamayı insan yapmaktadır.

Bilgisayarlar tarihte sadece sayısal verileri işleyen makineler iken daha sonrasında metin üzerinde çalışmaya başlamıştır. Bilgisayarın sadece elektriğin var olup olmaması veya manyetik hafızalar için iki zıt manyetik durumdan biri olarak ifade edilen oldukça basit bir verinin harfleri nasıl ifade edebileceğini düşünebilirsiniz. Bunun için öncelikle 1 ve 0’ların nasıl onluk sistemdeki rakamları ifade edebildiğine bakalım.

Elimizde sadece iki durum mevcut ve bu durumları biz sayısal olarak “1” ve “0” olarak nitelendirdik. Bu durumların üçüncü bir durumu mümkün olmadığına göre elde edilen veriyi ancak bunları yan yana koyarak ifade etmemiz mümkün. Demek ki elimizde ikilik sayı tabanı var ve onluk sayı tabanındaki değerleri buna çevirerek yazacağız ve bu okuduğumuz değerleri anlamak için de ikilik sayı tabanında gelen değeri onluk sayı tabanına çevireceğiz. Bu sayı tabanları arasındaki çevirim bir algoritma ve matematik işlemi dahilinde olduğu için kendi elimizle yapmak yerine ilgili çevirici programı yazarak bizim girdiğimiz onluk sayı tabanında olan sayıyı ikilik sisteme, ikilik sayı tabanında olan sayıyı da onluk sayı tabanına çevirmesini sağlayabiliriz. İkilik sayı tabanını ve arasındaki işlemleri daha öncesinde yazdığım için ilgili bağlantıları vererek bu konuyu bitiriyorum.

http://www.lojikprob.com/elektronik/dijital-elektronikte-ikilik-binary-sayilar/

http://www.lojikprob.com/elektronik/dijital-elektronik-3-sayi-sistemleri-ve-ikilik-sayi-sistemi/

Bilgisayarlar arada bir çeviriciye ihtiyaç duysa dahi onluk sayıları temsil etme kaabiliyetine sahipti. Fakat bir bilgisayar sadece onluk sayıları ifade edebiliyorsa bu makine bir hesap makinesinden çok ileri gidemeyecektir. Bizim günlük hayatta kullandığımız yazıyı bilgisayara aktarmak, yazı üzerinden işlemler yapmak bir sonraki adım olmalıdır. Bunun için aynı sayı tabanlarında olduğu gibi bazı ikilik değerler bizim kullandığımız harf, rakam ve sembollerin karşılığı haline getirilmiş ve ASCII adında standartlaştırılmıştır. ASCII ile her sayısal değerin harf veya sembol değerini görmemiz mümkündür. Dikkat edilmesi gereken nokta ASCII’de temsil edilen rakamların da birer harf statüsünde olduğudur. Örneğin biz klavyede “A” tuşuna bastığımızda bilgisayara onluk tabanda “65” değeri ulaşmaktadır. Bilgisayar bu değeri kendisi işlese de ekrana yine “A” olarak yazmaktadır. Bilgisayarlar harfleri, sembolleri kısacası 1 ve 0’dan başka hiçbir şeyi işleyemediği için bütün diğer veriler 1 ve 0’lar ile temsil edilmekte ve bilgisayar aradaki çevirimi yapmaktadır. Ben bununla alakalı olarak “Binary kodlama” makalesinde işin ayrıntısını anlattım. Konuyu pekiştirme açısından bu makaleyi okuyabilirsiniz.

http://www.lojikprob.com/elektronik/dijital-elektronik-5-binary-kodlama/

Görüldüğü gibi bilgisayar bilimlerinin doğrudan dijital elektronikle alakalı olduğunu görüyoruz. Çünkü bilgisayarlar dijital elektronik kullanılarak meydana gelmiş araçlardır. Bilgisayarların çevre birimlerinde analog elemanlar ve devreler kullanılsa da biz bilgisayar dediğimizde temel bilgisayar sisteminden bahsederiz. Daha ayrıntılı bilgi için mikrodenetleyici ve mikroişlemci mimarisi yazılarımıza bakabilirsiniz.

Buraya kadar sayıların ve harflerin nasıl bilgisayarda ifade edildiğini anladık. Fakat modern bilgisayarlar eskiden olduğu gibi terminallerden ibaret bir giriş ve çıkış ünitesine sahip değil. En basitinden bilgisayar kasalarında “PC Hoparlörü” denen bir parça var ve bu parçaya analog sinyal uygulanarak ses çıkışı alınıyor. Yeni bilgisayarların hepsinde dahili olarak ses kartı mevcut ve bu ses kartında hafızada yer alan ses dosyaları analog sinyal haline çeviriliyor. Resim ve videolar ise ekranda görüntülenirken biz burada ne harf ne de sayı değerlerini görüyoruz. Üstelik yakın zamana kadar video sinyalleri analog haldeydi.

Hepiniz emin olabilirsiniz ki bilgisayarda mevcut olan bütün veriler “1” ve “0” halindedir. Ses ve resim dosyaları dahil bütün veriler kendilerine has bir kodlama ile kaydedilir. Örneğin bir bitmap formatında resim dosyamız varsa bu resim dosyasının birinci pikselden (0, 0 kordinatı) itibaren üç farklı renk değerini sırayla yazmaktan ibaret olduğunu görürüz. Örneğin mavi renk yazacaksa 0, 0, 255 yazmakta, kırmızı yazacaksa 255, 0, 0 yazmakta. Fizikte üç ana rengin karışımı ile bütün renkleri elde edebileceğimize göre üç ana renk değerinin şiddeti 0-255 arasında belirtilmektedir. Elbette bu en basit ve yer kaplayan formatlardan biri olabilir. PNG, JPG, GIF ve sair formatların her birinin kendilerine has algoritması, düzeni ve kodlaması bulunmaktadır.

Ses konusuna gelirsek ise ses meselesini anlamak için öncelikle DAC devrelerini bilmemiz şarttır. Dijital sistemlerdeki veriyi analog sinyal haline dönüştürebilen bu devreler aslında oldukça basit gerilim bölücü direnç dizisinden ibarettir. Dijital veri 1 ve 0’lar halinde sıralı halde geldiğinden ilgili dirençlere gerilim uygulanır ve bu gerilim bölünerek belli bir çözünürlükte analog çıkış alınır.  Çeşitli filtreler ile desteklenen bu çıkıştan sayı değerine göre istenilen frekansta ses sinyali alınabilir. Elbette bu işlemler bilgiyi görüntüye dönüştürme ve bilgiyi sese dönüştürme gibi bilginin ifadesi şeklinde olup bilgisayar sisteminin ana görevi değildir. O yüzden ekran kartı, ses kartı, ADC, DAC gibi çevre birimleri sayesinde bu işler yapılır.

Bizi Facebook grubumuzda takip etmeyi unutmayın. Bilgili ve öğrenmeye hevesli bir topluluk oluşturmak istiyoruz.

https://www.facebook.com/groups/1233336523490761/

 

Gökhan Dökmetaş

"Arduino Eğitim Kitabı" ve "Arduino ve Raspberry PI ile Nesnelerin İnterneti" kitaplarının yazarı. Başkent Teknoloji ve Dedektör Merkezi'nde Ar-ge Sorumlusu. Araştırmacı-Yazar.

You may also like...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.