Skip to content

sametuca/basic-assembly

Repository files navigation

  • Registers (Yazmaçlar): Hızlı bellek alanları (RAX, RBX, RCX, vb.)
  • Memory: RAM bellek
  • Instructions: CPU komutları (mov, add, sub, jmp, vb.)

Temel Kavramlar

  • Assembly Language: Düşük seviyeli programlama dili, makine diline yakın.
  • Opcode: İşlem kodu, CPU'nun gerçekleştireceği işlemi belirten komut.
  • Operand: İşlemci komutunun üzerinde işlem yapacağı veri.
  • Labels: Programda belirli bir noktayı işaretlemek için kullanılır.
  • Directives: Assembler'a özel talimatlar (örneğin, veri tanımlama).
  • Stack: LIFO (Last In, First Out) veri yapısı, fonksiyon çağrılarında kullanılır.
  • Heap: Dinamik bellek tahsisi için kullanılan bellek alanı.

Temel Yazmaçlar (Registers)

  • RAX: Birincil akümülatör yazmacı, aritmetik işlemler için kullanılır.
  • RBX: Base register, veri depolama ve adresleme için kullanılır.
  • RCX: Döngü sayacı olarak kullanılır.
  • RDX: İkincil akümülatör yazmacı, aritmetik işlemler için kullanılır.
  • RSI: Kaynak indeks yazmacı, veri kopyalama işlemlerinde kullanılır.
  • RDI: Hedef indeks yazmacı, veri kopyalama işlemlerinde kullanılır.
  • RSP: Yığın işaretçisi, yığının (stack) üstünü gösterir.
  • RBP: Taban işaretçisi, fonksiyon çağrılarında kullanılır.
  • RIP: Komut işaretçisi, yürütülecek sonraki komutun adresini tutar.

Temel Komutlar (Instructions)

  • mov: Veri taşıma komutu.
  • add: Toplama işlemi.
  • sub: Çıkarma işlemi.
  • mul: Çarpma işlemi.
  • div: Bölme işlemi.
  • jmp: Koşulsuz atlama komutu.
  • cmp: Karşılaştırma işlemi.
  • je/jz: Eşitse atla (jump if equal/zero).
  • jne/jnz: Eşit değilse atla (jump if not equal/not zero).
  • call: Fonksiyon çağırma komutu.
  • ret: Fonksiyondan dönüş komutu.

Kaynaklar

Lisans

Bu proje MIT Lisansı altında lisanslanmıştır. Detaylar için LICENSE dosyasına bakınız.

About

Knowing what happens inside the kernel

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published