Register'leri anlattığım konu : Temel Bilgisayarın İç Yapısı ve İşleyişi [Bilgisayar Mimarisi]
Detaylı Çözüm :
Bilgisayarın 24 bitlik olması demek, bu bilgisayarın 24 bitlik buyruk register'lerine (IR) sahip olması anlamına gelmektedir. Ayrıca, bellekteki herbir satır da aynı zaman 24 bit veri tutuyor demektir. Yani belleğin her bir satırında 24 kutucuk var diyebiliriz. Her kutucuğa da bir bit geldiğini düşünürsek.
Sonrasın da ise 250 adet buyruk içeriyormuş dedik örneğimizde.
Önceki paragrafta 24 bitlik buyruk register'ı (IR) demiştim. Doğrudan adresleme olayında 24 bitlik register dediğimiz şey 2 parçaya bölünmüştür. Bir kısmında OPR bitleri saklanır. Diğer kısmında verinin adresi saklanır.
OPR bitleri dediğimiz yerde buyruklar saklanır. OPR biti işlem bitidir. Yani verimizi hangi işleme tabi tutacağımızın bilgisi orada saklıdır. Toplama, Çıkarma, Çarpma vs.
Soruda "250 adet bellek referanslı buyruk" demişiz. Bu da demek oluyor ki bu basit yapılı bilgisayarımız 250 çeşit farklı işlem yapabilir. Demin dediğim gibi toplama, çıkarma, çarpma, kopyalama, taşıma... vs. vs. vs. böyle 250 tane işlem yapılabiliyormuş.
Register'imiz 24 bitlikti soruya göre. Bu bilgisayar 250 tane işlem yapabiliyorsa o halde OPR biti dediğimiz kısım 8 bit olmalı. 8 bit ile kaç farklı kombinasyon yada kaç farklı işlem yapılabilir? Cevap = 256 farklı işlem! (Çünkü 2 üzeri 8'den 256 farklı kombinasyon çıkar.)
Neden OPR bitine "8 bit olmalı" dedim?? - Bu sorunun cevabını biraz daha detaylı yazayım.
Mesela OPR bitine 7 deseydik, 2 üzeri 7 = 128 edecekti. 7 bit ile 128 farklı kombinasyon yapılır. Yani bu bilgisayar 128 farklı sorun çözer. Oysaki bizim bilgisayarımız 250 adet bellek adreslemeli buyruk içeriyormuş. Yani 250 adet sorun çözebiliyormuş.
8 yaptık, çünkü (2 üzeri 8) = 256 ediyor. Yani bu bilgisayar 256 farklı sorun çözebilir. +6 fazla çıkıyor ama o önemli değil. 250'den +6 fazla. Ama fazla olması önemli değil. Fazla olsun ama az olmasın. Problem değil. Sonuçta 250 adet işlem içeriyor olmasıdır bizim için önemli olan. Soruda, bu bilgisayarın 250 adet bellek adreslemeli (referanslı) buyruk içerdiği söylenmiş.
Kombinasyon kısmını açacak olursam :
0 0 0 0 0 0 0 1 = Toplama
0 0 0 0 0 0 1 0 = Çıkarma
0 1 0 0 0 0 0 0 = Çarpma
0 0 1 0 0 0 0 0 = Bölme
..vs. şeklinde 256 farklı işlem bilgisi tutuluyor bilgisayarda. Herbiri 8 bit olacak şekilde.
Bu olayı daha basit şekliyle şöyle açıklayabilirim. Sayısal Tasarım yada Sayısal Elektronik dersi gördüyseniz eğer oradan mantık kurun. Eğer Flip-Flop 2 bitlik ise, bu 2 bit ile 4 farklı kombinasyon yapabiliyorduk.
(2 üzeri 2) = 4 farklı kombinasyon.
Bu 4 kombinasyon da şunlar olacaktır : 00, 01, 10 ve 11
Sonuç olarak, OPR bitimiz = 8 bit imiş. Bu kombinasyon olayından onu anladık. Bilgisayarımız 24 bitlik bir bilgisayar olduğuna göre ve dolayısıyla registerlar de 24 bitlik olduğuna göre....
O halde IR register'in adres kısmına 16 bit kalacaktır. (16 + 8 = 24)
Yani şeklimiz şöyle olacaktır :
Soruda bilgisayarımız için 30 bitlik bir bilgisayar deseydi OPR biti yine 8 bit olacaktı. Çünkü soruda "bu bilgisayar 250 adet buyruk" içeriyor demiş. Ama adres biti bu sefer 22 olurdu. Şayet öyle bir şey olsaydı.
Son olarak..
24 bitlik bilgisayar örneğimize göre herbir registerin kaç bit veri içerdiğini yazalım :
PC ve AR adres taşıyan registerlar oldukları, bellekteki 24 bitlik verinin sadece adres kısmını tutarlar. Şekilden de göreceğiniz üzere adres kısmı 16 bit olduğu için;
PC = 16 bit
AR = 16 bit
diğer kalan tüm registerlar bu soruya göre 24 bit olacak.
IR = 24 bit
DR = 24 bit
TR = 24 bit
veri taşırlar.
Tüm cevap buydu. Anlamadığınız yerler olursa eğer, aşağı kısma yorum olarak yazabilirsiniz. Size elimden geldiğince yardımcı olmaya çalışırım.
Yukarıdaki örneği anladıysanız eğer, konuyu daha iyi pekiştirmek için aşağıdaki örneği de siz yapın.
Örnek : 20 bitlik bir bilgisayar 130 farklı buyruk çalıştırabiliyor. Bu durumda bellek şekli nasıl olur? AR, PC, IR, TR, DR registerlerinin her biri kaç bit olur? (doğrudan adreslemeli olacak.)
Bu konu ile ilgili anlatacaklarım bu kadar. Peki ya soruda "dolaylı adresleme" deseydi ne yapacaktık? O konuya da başka bir başlık altında değineceğim.
Bilgisayar Mimarisi Dersi Konu Anlatımlarının Tamamı İçin Buraya Tıklayınız!
Anlatımınız çok güzel,elinize sağlık.
YanıtlaSilTeşekkür ederim. Faydalı olduysa ne mutlu bana. :)
SilÇok faydalı bir anlatımını var. Bir de sesli görüntülü youtube da ders yayinlarsaniz çok daha faydalı olur.teşekkürler
YanıtlaSilVideo çekmek, çektikten sonra düzenlemek falan çok zahmetli ve zaman alan bir iş ve maalesef bunun için yeteri kadar vaktim yok. İlginiz ve öneriniz için teşekkür ederim.
Sil