Bilgisayarlar
Giriş
Öğrenme Çıktıları
İkili sayıların ve sınırlı bit sayısının sonuçlarını açıklamak.
ASCII, Unicode ve dizge kavramlarını ayırt etmek.
Saklanan program ve getir-çöz-çalıştır döngüsünü açıklamak.
CPU, bellek, yazmaç ve veri yolu ilişkisini yorumlamak.
Giriş
Bilgisayarın Temel Parçaları
Komutları yürütür.
Veri ve komutları saklar.
Dış dünya ile veri alışverişi sağlar.
Veri Temsili
Bilgiden Bitlere
Sayılar, harfler, görüntüler ve program komutları bellekte bit dizileri olarak saklanır. Bit dizisinin anlamını veri türü ve kodlama belirler.
Veri Temsili
İkili Sayılar
n bit, işaretsiz olarak 0 ile 2n−1 arasındaki değerleri gösterebilir.
Veri Temsili
Taban Kavramı
| Sistem | Taban | Rakamlar | Örnek |
|---|---|---|---|
| İkili | 2 | 0–1 | 1101₂ |
| Sekizli | 8 | 0–7 | 15₈ |
| Onluk | 10 | 0–9 | 13₁₀ |
| Onaltılık | 16 | 0–9, A–F | D₁₆ |
Veri Temsili
Negatif Tam Sayılar
Modern bilgisayarlar negatif tam sayıları çoğunlukla ikiye tümleyen gösterimle saklar.
Pozitif ve negatif sıfır ayrımı oluşmaz.
Toplama devreleri pozitif ve negatif sayılarda aynı kuralları kullanabilir.
−2ⁿ⁻¹ ile 2ⁿ⁻¹−1 arasındadır.
8 bit: −128 … 127Veri Temsili
Ondalıklı Sayılar
Çok büyük ve çok küçük değerleri bilimsel gösterime benzer biçimde saklar.
Her ondalık değer sonlu bitlerle tam temsil edilemez.
Hesaplama sonuçlarında küçük farklar oluşabilir.
Ondalıklı sonuçlar tolerans değeriyle karşılaştırılabilir.
0.1 + 0.2 ≈ 0.30000000000000004
Metin Temsili
ASCII
ASCII, temel Latin harflerini, rakamları, noktalama işaretlerini ve kontrol karakterlerini sayısal kodlarla eşleştirir.
65
0100000197
0110000148
00110000Kontrol karakteri
LFMetin Temsili
Unicode
Unicode, farklı yazı sistemlerindeki karakterlere benzersiz kod noktaları atar.
Karakterin evrensel numarasıdır.
A → U+0041Unicode karakterlerini değişken uzunlukta byte dizileriyle kodlar.
Türkçe karakterler, farklı alfabeler, matematik sembolleri ve emoji.
Aynı kod noktası farklı Unicode dönüşüm biçimleriyle saklanabilir.
Metin Temsili
Dizgeler
Dizge (string), sıralı karakterlerden oluşan veri türüdür.
Karakter veya kod birimi sayısı.
İki dizgeyi ardışık hale getirme.
"Merhaba " + "Dünya"Bir karakteri veya alt dizgeyi bulma.
İçerik ve sıralama ilişkisini denetleme.
Veri Temsili
Yapılandırılmış Bilgi
Bitler daha büyük yapılar içinde düzenlenerek anlam kazanır.
- Bir öğrenci kaydı numara, ad ve not alanlarından oluşabilir.
- Dosya biçimi, alanların nasıl sıralandığını ve yorumlandığını tanımlar.
Bilgisayar Mimarisi
Saklanan Program Kavramı
Program komutları ve işlenecek veriler aynı bellekte sayısal kodlar olarak saklanabilir. İşlemci, bellekteki komutları sırayla okuyup yürütür.
Aynı donanım farklı programlarla farklı görevler yapar.
Davranış donanımı değiştirmeden yazılımla değişebilir.
Tek sistem hesaplama, iletişim ve medya görevlerini yürütebilir.
Bilgisayar Mimarisi
Bellek Hiyerarşisi
Üst katmanlar daha hızlı ve küçük; alt katmanlar daha yavaş ve büyüktür.
Bilgisayar Mimarisi
Getir–Çöz–Çalıştır Döngüsü
- Program sayacı bir sonraki komutun adresini tutar.
- Kontrol birimi komut kodunu yorumlar.
- ALU veya başka bir birim işlemi gerçekleştirir.
Bilgisayar Mimarisi
CPU'nun Temel Bölümleri
Komutların sırasını ve veri hareketini yönetir.
Aritmetik ve mantıksal işlemleri yapar.
İşlem sırasında kullanılan küçük ve hızlı depolama alanlarıdır.
Sık kullanılan veri ve komutları işlemciye yakın tutar.
Bilgisayar Mimarisi
Veri Yolları
| Yol | Görev |
|---|---|
| Veri yolu | CPU, bellek ve aygıtlar arasında veriyi taşır. |
| Adres yolu | İşlem yapılacak bellek veya aygıt konumunu belirtir. |
| Kontrol yolu | Okuma, yazma ve zamanlama sinyallerini taşır. |
Bilgisayar Mimarisi
Bellek Adresleri
| Adres | İçerik |
|---|---|
| 1000 | LOAD 1003 |
| 1001 | ADD 1004 |
| 1002 | STORE 1005 |
| 1003 | 12 |
| 1004 | 8 |
- Her bellek hücresinin bir adresi vardır.
- Komutlar adres kullanarak veriye ulaşır.
- Aynı bit dizisi komut veya veri olarak yorumlanabilir.
Bilgisayar Mimarisi
von Neumann Mimarisi
- Program komutları ve veriler ortak bellekte tutulur.
- CPU komutları sırayla işler; dallanma komutları bu sırayı değiştirebilir.
- CPU ile bellek arasındaki aktarım hızı sistem performansını sınırlayabilir.
Bilgisayar Mimarisi
Komutların Kodlanması
Makine komutu genellikle yapılacak işlemi ve kullanılacak değer veya adresleri belirtir.
İşlemin türünü tanımlar.
ADDİşlemde kullanılacak yazmaç, değer veya adres.
R1, R2Bit alanlarının sayısını ve yerini mimari belirler.
İşlemcinin doğrudan anlayabildiği komutların tamamı.
Programlama
Programlama Soyutlama Düzeyleri
Programlama
Yüksek Seviyeli Dil ve Assembly
int total = a + b;
İnsan tarafından okunabilir, taşınabilir ve üretkenlik odaklıdır.
LOAD R1, a ADD R1, b STORE total, R1
Belirli işlemci mimarisine yakın ve ayrıntılıdır.
Bilgisayar Mimarisi
Mimari Sınırlar
Aynı anda saklanabilecek veri miktarı sınırlıdır.
Her komut zaman ve enerji tüketir.
Sınırlı bit sayısı taşma ve yuvarlama üretebilir.
CPU, bellekteki veriyi beklerken boş kalabilir.
Her problem eşit ölçüde paralelleştirilemez.
Program ve veri aynı sistem kaynaklarını paylaştığı için yalıtım gerekir.
Özet
Bölüm Özeti
- Bilgisayar bütün verileri bit dizileriyle temsil eder.
- İkili gösterim tam sayılar için kesin, kayan nokta bazı ondalıklar için yaklaşık olabilir.
- ASCII ve Unicode karakterleri sayısal kodlarla eşleştirir.
- Saklanan program yaklaşımında komutlar ve veriler bellekte tutulur.
- CPU, komutları getir-çöz-çalıştır döngüsünde yürütür.
- Yüksek seviyeli diller donanım ayrıntılarını soyutlar.
Özet
Kontrol Soruları
- 1101₂ sayısı onluk sistemde kaçtır?
- 8 bit işaretli tam sayı aralığı nedir?
- ASCII ile Unicode arasındaki temel fark nedir?
- Program komutlarının bellekte saklanması hangi avantajı sağlar?
- Veri, adres ve kontrol yollarının görevleri nelerdir?
- Java kodu işlemcinin anlayacağı komutlara nasıl dönüşür?
Özet
Kaynaklar
- Kaynak sunum: Bölüm 1: Bilgisayarlar.
- Patterson ve Hennessy, Computer Organization and Design.
- Bryant ve O'Hallaron, Computer Systems: A Programmer's Perspective.
- Unicode Consortium, The Unicode Standard.
- IEEE 754, Floating-Point Arithmetic.
Son
← → veya boşluk ile gezinin · F: tam ekran · Home/End: ilk/son slayt