RISC Mimarisi Nedir?

RISC (Reduced Instruction Set Computer), basitleştirilmiş komut seti kullanan bir işlemci mimarisidir. CISC'nin karmaşık komutlarının aksine, RISC basit, hızlı çalışan komutlar kullanır.

RISC Tasarım İlkeleri

  • Basit komutlar: Her komut bir çevrimde tamamlanır
  • Load/Store mimarisi: Sadece load ve store komutları belleğe erişir
  • Sabit uzunlukta komutlar: Tüm komutlar aynı boyutta
  • Çok sayıda register: Register kullanımı bellek erişimini azaltır
  • Pipeline uyumlu: Komutlar pipeline'da paralel çalışabilir

RISC-V Komut Seti

RISC-V, açık kaynak kodlu modern bir RISC mimarisidir. Berkeley Üniversitesi'nde geliştirilmiştir ve giderek popülerleşmektedir.

RISC-V Register Yapısı

  • 32 genel amaçlı register (x0-x31)
  • x0: Her zaman 0 değerini tutar (sabit)
  • x1 (ra): Return address - Geri dönüş adresi
  • x2 (sp): Stack pointer - Yığın göstericisi
  • x5-x7, x28-x31 (t0-t6): Geçici register'lar
  • x8-x9, x18-x27 (s0-s11): Kaydedilmiş register'lar
  • x10-x17 (a0-a7): Fonksiyon argümanları ve dönüş değerleri

Temel Komut Formatları

R-type: register-register işlemler
add x1, x2, x3 → x1 = x2 + x3

I-type: immediate ve load komutları
addi x1, x2, 10 → x1 = x2 + 10
lw x1, 0(x2) → x1 = memory[x2]

S-type: store komutları
sw x1, 0(x2) → memory[x2] = x1

RISC vs CISC

Özellik RISC CISC
Komut sayısı Az (≈100) Çok (≈300-1000)
Komut uzunluğu Sabit (32-bit) Değişken (1-15 byte)
Pipeline Kolay Zor
Örnekler ARM, RISC-V, MIPS x86, x86-64

Assembly Programlama Temelleri

# Örnek: İki sayıyı toplama
li x10, 5 # x10 = 5
li x11, 10 # x11 = 10
add x12, x10, x11 # x12 = x10 + x11 = 15

# Döngü örneği
li x10, 0 # counter = 0
li x11, 10 # limit = 10
loop:
  addi x10, x10, 1 # counter++
  blt x10, x11, loop # if counter < limit goto loop

Soru 1: RISC açılımı nedir?

  • A) Random Instruction Set Computer
  • B) Reduced Instruction Set Computer
  • C) Rapid Instruction Set Computer
  • D) Regular Instruction Set Computer

Soru 2: RISC mimarisinde kaç register vardır?

  • A) 16
  • B) 32
  • C) 64
  • D) 128

Soru 3: x0 register'ının özelliği nedir?

  • A) Yığın göstericisi
  • B) Geri dönüş adresi
  • C) Her zaman 0 değerini tutar
  • D) Komut sayacı

Soru 4: Load/Store mimarisi ne demektir?

  • A) Sadece load ve store komutları belleğe erişir
  • B) Tüm komutlar belleğe erişebilir
  • C) Hiçbir komut belleğe erişemez
  • D) Sadece aritmetik komutlar belleğe erişir

Soru 5: RISC-V komutları kaç bit uzunluğundadır?

  • A) 16-bit
  • B) 24-bit
  • C) 32-bit
  • D) 64-bit

Soru 6: "add x1, x2, x3" komutu ne yapar?

  • A) x1 = x2 + x3
  • B) x2 = x1 + x3
  • C) x3 = x1 + x2
  • D) x1 = x2 - x3

Soru 7: Stack pointer hangi register'dır?

  • A) x0
  • B) x1
  • C) x2 (sp)
  • D) x10

Soru 8: Hangi mimari x86'ya aittir?

  • A) RISC
  • B) CISC
  • C) VLIW
  • D) Harvard

Soru 9: lw komutu ne yapar?

  • A) Store word - Belleğe yazar
  • B) Load word - Bellekten okur
  • C) Loop word - Döngü başlatır
  • D) Link word - Bağlantı kurar

Soru 10: RISC-V hangi üniversitede geliştirildi?

  • A) MIT
  • B) Stanford
  • C) Berkeley
  • D) Harvard
RISC açılımı
Reduced Instruction Set Computer
RISC-V register sayısı
32 genel amaçlı register (x0-x31)
x0 register
Her zaman 0 değerini tutar (sabit)
x1 (ra) register
Return Address - Geri dönüş adresi
x2 (sp) register
Stack Pointer - Yığın göstericisi
Load/Store mimarisi
Sadece load ve store komutları belleğe erişir
RISC komut uzunluğu
Sabit - 32 bit
add komutu
add x1, x2, x3 → x1 = x2 + x3
addi komutu
addi x1, x2, 10 → x1 = x2 + 10
lw komutu
Load Word - Bellekten register'a okur
sw komutu
Store Word - Register'dan belleğe yazar
RISC örnekleri
ARM, RISC-V, MIPS, PowerPC
CISC örnekleri
x86, x86-64 (Intel, AMD)
R-type format
Register-Register işlemler (add, sub, and, or)
I-type format
Immediate ve Load komutları (addi, lw)