Etkileşimli Simülasyon

Von Neumann Mimarisi Nasıl Çalışır?

Bileşenleri keşfet, veri yollarını takip et ve bir talimatın nasıl işlendiğini adım adım izle. Bu deneyim, bilgisayar sistemlerinin kalbini görselleştirmen için tasarlandı.

Canlı Veri Akışı Simülasyonu

Fetch → Decode → Execute → Write-back döngüsünü incele. Senaryolar arasında geçiş yap, animasyon hızını ayarla ve veri akışını an be an takip et.

Durduruldu
LOAD

Bellekten veri okuma işlemi.

Çevrim 0001
Talimat 01
Idle Durum makinesi
CPU Bellek G/Ç Veri Yolu Adres Yolu Kontrol Sinyali

Execution Trace

Her adımda bellek ve register değişimlerini takip edin

Step 1
Memory
CPU Registers

Talimat Adımları

Adım 1 / 4

    Seçilen adımın açıklaması burada görünecek.

    Sistem Bileşenleri

    Von Neumann mimarisini oluşturan tüm donanım bileşenlerini ve işlevlerini detaylı olarak inceleyin.

    Von Neumann Sanal Makinesi (VVM)

    Kendi assembly programınızı yazın ve Von Neumann mimarisinin nasıl çalıştığını adım adım izleyin. Gerçek bir işlemci gibi, her talimat fetch-decode-execute döngüsünden geçer.

    Assembly Kodu
    1 satır Hazır
    1x

    VVM Komutları (Little Man Computer)

    • LDA nn (5nn) - Bellek[nn] → AC
    • STO nn (3nn) - AC → Bellek[nn]
    • ADD nn (1nn) - AC + Bellek[nn] → AC
    • SUB nn (2nn) - AC - Bellek[nn] → AC
    • IN (901) - Kullanıcıdan girdi → AC
    • OUT (902) - AC'yi çıktıla
    • BR nn (6nn) - nn adresine atla
    • BRZ nn (7nn) - AC=0 ise nn'e atla
    • BRP nn (8nn) - AC>=0 ise nn'e atla
    • NOP (4nn) - Boş işlem
    • HLT (000) - Programı durdur
    • DAT nnn - Veri (örn: DAT -001)
    • *nn - Adres yönergesi
    • // yorum - Yorum satırı
    ⌨️ Klavye Kısayolları
    Tab Girinti ekle (2 boşluk)
    Ctrl + D Satırı çoğalt
    Ctrl + Shift + K Satırı sil
    Alt + / Satırı taşı (cursor takip eder)
    Alt + Shift + / Satırı çoğalt yukarı/aşağı
    Alt + Click Multi-cursor (çoklu düzenleme)
    F5 Çalıştır/Duraklat
    F10 Adım adım çalıştır
    Ctrl + F5 Sıfırla ve çalıştır
    Esc Durdur

    CPU Kayıtları

    00
    000
    +000
    00
    +000
    Z N

    Bellek (0-15)

    Çıktı

    VVM Hazır. Programınızı çalıştırın.
    Hazır Çevrim: 0

    Donanım Nesilleri Zaman Çizelgesi

    Kaydırıcıyı hareket ettirerek bilgisayar donanımının evrimini incele. Her nesil için kullanılan teknoloji, örnek sistemler ve performans değerleri güncellenecek.

    1. Nesil

    Vakum Tüpleri Çağı

    1940'ların sonu: Elektronik bilgisayarların doğuşu, vakum tüplerinin parlak ama ısınan dünyası.

      Did You Know?

      Her 15 saniyede bir yeni bir bilgi kartı görünecek.

      📚 Teorik Bilgiler & Öğrenme Kaynakları

      Bilgisayar mimarisi, talimat setleri ve Von Neumann mimarisi hakkında kapsamlı bilgiler.

      Bilgisayar Mimarisi Temelleri

      Bileşenlerin düzenlenmesi ve etkileşimleri

      Bilgisayar mimarisi, bileşenlerin düzenlenmesi ve etkileşimleridir.

      • Instruction Set (Talimat Seti): İşlemcinin tanıdığı ve çalıştırabileceği makine komutlarının kümesi
      • İşlemci Sayısı: Tek veya çok çekirdekli sistemler
      • İç Veri Yolları: Bileşenler arası veri iletişim yapıları
      • Cache Kullanımı: Hızlı erişim için önbellek mekanizmaları
      • I/O Arayüzleri: Giriş/çıkış cihazlarının bağlantı türleri

      Talimat Seti Mimarileri

      CISC, RISC ve diğer tasarım yaklaşımları

      CISC (Complex Instruction Set Computer)

      • 200'den fazla benzersiz komut içerir
      • Neredeyse her işlem türü için ayrı komut
      • Avantaj: Programlama kolaylığı, ucuz donanım
      • Dezavantaj: Artan mimari karmaşıklık, azalan performans
      • Örnek: x86, x86-64 (Intel, AMD)

      RISC (Reduced Instruction Set Computer)

      • Küçük ve basit komut seti
      • En sık kullanılan komutlara odaklanır
      • Avantaj: Daha hızlı çalışma, basit donanım
      • Dezavantaj: Daha fazla talimat gerekebilir
      • Örnek: ARM, MIPS, RISC-V

      Diğer Mimariler

      • MISC: Minimal Instruction Set (Stack-based)
      • OISC: Tek talimat seti (Ultimate RISC)
      • VLIW: Very Long Instruction Word (Paralel işleme)

      Talimat Döngüsü (Fetch-Decode-Execute)

      İşlemcinin temel çalışma prensibi

      1. Fetch (Getir)

      • PC (Program Counter) bir sonraki talimatın adresini tutar
      • İşlemci, PC'nin işaret ettiği bellek konumundan talimatı getirir
      • Talimat IR (Instruction Register) içine yüklenir
      • PC değeri artırılır (normalde)

      2. Decode (Çözümle)

      • Kontrol birimi IR'deki talimatı yorumlar
      • Op code (işlem kodu) ve operand (veri) belirlenir
      • Gerekli kontrol sinyalleri üretilir

      3. Execute (Çalıştır)

      • İşlemci-Bellek: CPU ile ana bellek arasında veri transfer
      • İşlemci-I/O: CPU ile I/O modülü arasında veri transferi
      • Veri İşleme: ALU'da aritmetik/mantıksal işlemler
      • Kontrol: Dallanma (jump, branch) işlemleri

      Von Neumann Mimarisi (1945)

      Modern bilgisayarların temel tasarımı

      Temel Prensipler

      • Saklı Program Konsepti: Program ve veri aynı bellekte saklanır
      • Lineer Bellek Adresleme: Bellek sıralı olarak adreslenır
      • İçerik Bağımsız Adresleme: Bellek adresi içeriğe göre değil, konuma göre belirlenir

      Bileşenler

      • CPU (İşlemci):
        • Kontrol Birimi: Fetch-Decode-Execute döngüsünü yönetir
        • ALU: Aritmetik ve mantıksal işlemler yapar
        • Kayıtlar: PC, IR, MAR, MBR, Accumulator
      • Bellek: Program ve veri depolama
      • I/O Modülü: Giriş/çıkış cihazları arayüzü
      • Sistem Yolu (Bus): Veri, adres ve kontrol sinyallerini taşır

      VVM Talimat Seti

      Little Man Computer modelinin talimatları

      Veri Transfer Talimatları

      Kod Mnemonic Açıklama
      5nn LDA nn Bellek[nn] → Accumulator'e yükle
      3nn STO nn Accumulator → Bellek[nn]'e kaydet
      901 IN Kullanıcı girişi → Accumulator
      902 OUT Accumulator → Çıktı

      Aritmetik Talimatlar

      Kod Mnemonic Açıklama
      1nn ADD nn AC + Bellek[nn] → AC
      2nn SUB nn AC - Bellek[nn] → AC

      Kontrol Akışı Talimatları

      Kod Mnemonic Açıklama
      6nn BR nn Koşulsuz dallanma (PC = nn)
      7nn BRZ nn AC = 0 ise dallan
      8nn BRP nn AC ≥ 0 ise dallan
      0nn HLT Programı durdur

      Assembly Programlama Örnekleri

      Pratik kod örnekleri ve açıklamaları

      Örnek 1: İki Sayıyı Toplama

      IN         ; Birinci sayıyı al
      STO 10     ; Bellekte 10. adrese kaydet
      IN         ; İkinci sayıyı al
      ADD 10     ; İlk sayı ile topla
      OUT        ; Sonucu göster
      HLT        ; Dur

      Örnek 2: Pozitif Fark Bulma

      IN         ; A sayısını al
      STO 10     ; A → Bellek[10]
      IN         ; B sayısını al
      STO 11     ; B → Bellek[11]
      SUB 10     ; AC = B - A
      BRP 08     ; Eğer pozitifse 08'e git
      LDA 10     ; Değilse A'yı yükle
      SUB 11     ; AC = A - B
      OUT        ; Sonucu yazdır
      HLT        ; Dur

      Örnek 3: Döngü ile Sayma

      *00
          LDA 10     ; Counter'ı yükle
          OUT        ; Yazdır
          ADD 11     ; 1 ekle
          STO 10     ; Kaydet
          SUB 12     ; Limit ile karşılaştır
          BRZ 09     ; Limitye ulaştıysa dur
          BR 00      ; Döngüye devam et
          HLT
      *10
          DAT 0      ; Counter (başlangıç 0)
          DAT 1      ; Artış miktarı
          DAT 5      ; Limit

      Alternatif VVM/LMC Simülatörleri

      Online Little Man Computer uygulamaları