Bilgisayarlar Nasıl Çalışır?


Günümüz dünyasında bilgisayarlar hayatımızın vazgeçilmez bir parçası haline geldi. Bunları iş, eğlence, iletişim ve çok daha fazlası için kullanıyoruz. Önemlerine rağmen, birçok insan bilgisayarların nasıl çalıştığını anlamıyor. Bu blog yazımızda bilgisayarın beyni olan Merkezi İşlem Birimi (CPU) üzerinde duracağız. CPU'ların nasıl çalıştığını ve bir bilgisayarın işleyişinde oynadıkları rolü tartışacağız.



    Bir bilgisayarın en önemli bileşenlerinden biri olan CPU (Central Processing Unit), bilgisayarın tüm işlemlerinin yönetildiği birimdir. CPU, bilgisayarın işlem gücünü belirleyen ve verilerin işlenmesini sağlayan bir mikroişlemcidir.

    CPU, birçok küçük parçadan oluşur. Bu parçalar, birbirleriyle koordineli bir şekilde çalışarak bilgisayarın işlemlerinin hızlı ve doğru bir şekilde gerçekleştirilmesini sağlar. CPU'daki temel parçalar şunlardır:

  • Kontrol birimi (Control Unit): Bilgisayarın tüm işlemlerinin koordine edildiği birimdir. Kontrol birimi, programların çalıştırılması, verilerin işlenmesi ve sonuçların hafızaya kaydedilmesi gibi işlemleri yönetir.
  • Aritmetik ve mantıksal birim (Arithmetic and Logic Unit - ALU): Verilerin işlenmesi için kullanılan birimdir. ALU, basit matematiksel işlemleri (toplama, çıkarma, çarpma, bölme) ve mantıksal işlemleri (ve, veya, değil) gerçekleştirir.
  • Kaydedici (Register): Verilerin geçici olarak saklandığı birimdir. Kaydediciler, CPU'nun hızlı ve doğru çalışmasını sağlar.

    CPU, bir işlemi gerçekleştirmek için birden fazla komut kullanır. Bu komutlar, CPU'nun bellekten aldığı verileri işleyerek sonuçları hafızada saklar. CPU, işlemi tamamladıktan sonra sonucu hafızadan alarak kullanıcının istediği şekilde gösterir.

    Öncelikle Mantık Kapıları'ndan (Logic Gates) bahsetmeliyiz. Mantık kapıları, dijital devrelerde kullanılan elemanlardır ve mantıksal işlemleri gerçekleştirmek için kullanılırlar. Mantık kapıları, taşıma işlemlerinde kullanılan temel işlemler yani "and"(ve), "or"(veya) ve "not"(değil) okumaları. Mantık kapıları, elektrik sinyallerini kullanarak girdileri işleyerek çıktılar üretirler.

    Mantık kapılarının en temel örneklerinden biri "and" kapısıdır. "And" kapısı, iki veya daha fazla giriş sinyalinini alır ve tüm giriş çıkışı "1" olduğunda "1" çıktısı üretirken, diğer bölümler "0" çıktısı üretir.



    Mantık kapılarından "not" tahmin edebileceğiniz üzere elektrik sinyalleri tersine, yani "1"i "0", "0"ı da "1" olacak şekilde değiştirir.


    "Not" ve "and" kapılarını arka arkaya yerleştirdiğimizde "nand"(ve'nin değili) kapısını elde ederiz.



    Şimdi de 2 "not" ve 1 "nand" kapısını kullanarak diğer bir temel kapı olan "or" kapısını elde edebiliriz.





    Şimdi tüm bu mantık kapılarını kullanarak aritmetik ve mantıksal birimin yaptıklarını gerçekleştirebiliriz. Bunun için Binary Numbers(İkili Sayılar) ve bunların toplamasına dair teoriye bakmalıyız. Çünkü biliyoruz ki bilgisayarlar sadece elektrik akımını "var" veya "yok" yani, "1" veya "0" şeklinde okuyabiliyorlar. Bu yüzden biz de gündelik hayatta ve matematikte sık kullandığımız Onlu Sayı Sistemi'ni, İkili Sayı Sistemi'ne dönüştürerek bilgisayarlarda işlem yapmalıyız. Burada basit bir işlemin dönüşümüne bakalım.




    Yukarıda da gördüğümüz üzere Ondalık Sistem'deki 13 sayısını, İkili Sistem'de 1101 sayısına çevirebiliyoruz, veya tam tersi. İlk basamak 2⁰, ikinci basamak 2¹ şeklinde gidiyor ve basamağa denk gelen sayı ile çarpılıyor. Toplama işleminde ise "Carry"(Elde) ve "Sum"(Toplam) adında iki değerden faydalanıyoruz. Bunu 26+18 işleminde birler basamağının  toplamı olan 14 üzerinden işlersek, "Carry" = 1 ve "Sum" = 4 şeklinde düşünebiliriz. Tabi bunu bilgisayara mantık kapılarını kullanarak anlatmamız gerekiyor. 


    Yukarıdaki tabloda da anlaşıldığı üzere "Carry" aslında "and" kapısı yardımıyla bulunuyor. "Sum" ise "or", "and" ve "nand" kapılarının kombinasyonunu kullanarak elde ettiğimiz bir başka kapı olan "xor"(ya da) ile eşleşiyor.


    
    Şimdi "Sum" ve "Carry" ile tek basamaklı bir toplama işlemi tasarlayalım. Bu işleme de genel olarak "Adder"(Toplayıcı) diyelim. Bu işlem girdi olarak 2 binary number ve 1 "Carry-input" almalı, çıktı olarak da "Sum" ve "Carry" vermeli.
    
   
    Artık 1 bit üzerinde işlem yapabiliyoruz. Bunu 4 bit'lik işlemler üzerinde deneyelim. Aşağıdaki işlemlerden ilkinde 1+5=6 işlemini gerçekleştirdik. İkinci işlemde ise 15+1=16 yapıyor. Fakat 16 sayısını 4 bit ile temsil edemediğimiz için bize "Sum" = 0 ve "Carry" = 1 çıktısını verdi.



    Ve bu şekilde de bilgisayarların nasıl oluyor da bu denli hızlı bir şekilde işlem yapabiliyor olduklarının temelini öğrenmiş olduk. Daha sonra bir başka yazıda, "Bilgisayarlar nasıl hatırlıyor?" sorusuna değinmek ve öğrendiklerimi paylaşmak istiyorum. Umarım bugün, bu yazıda bilgisayarların nasıl çalıştığının temeline dair fikir edinmişsinizdir. Okuduğunuz için teşekkürler!



Kaynakça:https://tr.wikipedia.org/wiki/%C4%B0kili_say%C4%B1_sistemi
https://en.wikipedia.org/wiki/Central_processing_unit
https://www.youtube.com/watch?v=QZwneRb-zqA&t=739s
https://www.youtube.com/watch?v=cNN_tTXABUA&list=PLvX8GPt7gvJ3J4qiy-g6lvZp4yFPlwqiy

2 yorum:

Pages