Skip to main content

Assembly Programlama Dili

Assembly Dili Nedir ve Ne İşe Yarar?

Assembly dili, bilgisayarların işlemcileri tarafından doğrudan çalıştırılan düşük seviye bir programlama dilidir. Yüksek seviye dillerin aksine, Assembly dili işlemcinin mimarisiyle doğrudan bağlantılıdır ve donanım üzerinde daha hassas kontrol sağlar. Bu dil, özellikle sistem programlama, gömülü sistemler ve performans optimizasyonu gereken alanlarda tercih edilir.

Assembly Dilinin Temel Özellikleri

  • Düşük Seviye Programlama: Assembly, donanıma çok yakın çalışır ve işlemcinin tüm yeteneklerine doğrudan erişim sağlar.

  • Performans ve Hız: Assembly dili, yüksek performans ve hız sağlar çünkü doğrudan işlemci komutlarını kullanır.

  • Az Kaynak Kullanımı: Çok küçük bellek alanlarında çalışabilir, bu nedenle gömülü sistemlerde sıkça kullanılır.

  • Donanım Bağımlılığı: Assembly dili, işlemci mimarisine bağımlıdır ve farklı işlemciler için farklı kodlama gerektirir.

Assembly Dilinin Kullanım Alanları

Assembly dili genellikle şu alanlarda tercih edilir:

  • İşletim sistemi geliştirme

  • Sürücü ve firmware yazılımı

  • Gömülü sistemler ve mikrodenetleyici programlama

  • Performans kritik uygulamalar (oyun motorları, grafik işlemleri)

Assembly Dili Öğrenmeye Nasıl Başlanır?

Assembly dilini öğrenmek için öncelikle işlemci mimarisi ve temel bilgisayar organizasyonu hakkında temel bilgilere sahip olmak faydalıdır. Daha sonra NASM (Netwide Assembler), MASM veya GAS (GNU Assembler) gibi araçlar kullanılarak Assembly dili programlama yapılabilir.

Assembly dili öğrenirken, temel işlemci komutları, bellek yönetimi ve işlemci register'ları gibi konulara odaklanmalısınız.

Assembly Öğrenmek Neden Önemlidir?

Assembly dili öğrenmek, bilgisayarların çalışma prensiplerini ve donanım yazılım etkileşimini derinden anlamanızı sağlar. Bu, programlama kariyerinizde önemli bir teknik derinlik kazandırır ve performans optimizasyonu gerektiren projelerde size önemli avantajlar sağlar.

Sonuç

Assembly dili, bilgisayar mühendisliğinin temellerini anlamak isteyen, sistem programlama veya gömülü sistemler üzerine uzmanlaşmak isteyen herkes için önemli bir araçtır. Assembly dilini öğrenerek, bilgisayarların nasıl çalıştığına dair derinlemesine bilgi edinebilir ve teknik yetkinliğinizi önemli ölçüde artırabilirsiniz.



Assembly Dilinin Kökeni ve Geliştiricileri


Assembly dili ilk olarak 1940’ların sonu ve 1950’lerin başında ortaya çıktı. Makine dilinin (ikili kodların) doğrudan yazılmasını kolaylaştırmak amacıyla geliştirildi.


Önemli İlk Geliştiriciler ve Katkı Sağlayan Kuruluşlar:

  • Kathleen Booth (Birkbeck College, University of London - 1947-1949)

    • İlk assembly dili konseptlerinden biri olarak kabul edilir.

  • Nathaniel Rochester (IBM - 1949-1950)

    • IBM’in ilk bilgisayarları için (IBM 701) ilk pratik assembly dillerinden birini geliştirdi.

  • Stan Poley (IBM - 1950’ler)

    • IBM sistemleri için geliştirmelere devam etti.

  • Maurice Wilkes ve David Wheeler (Cambridge Üniversitesi, İngiltere - 1949-1951)

    • “Initial Orders” adı verilen, EDSAC bilgisayarı için ilk assembly benzeri dillerden birini yazdılar.


Önemli Katkı Sağlayan Firmalar:

  • IBM

    • Assembly dilinin standardize edilmesinde ve geniş çapta yayılmasında kritik rol oynadı.

    • Özellikle IBM 704, IBM 709 ve System/360 gibi büyük ölçekli bilgisayarlar için özel assembly dilleri geliştirdi.

  • DEC (Digital Equipment Corporation)

    • PDP serisi mini bilgisayarlar için assembly dilleri geliştirdi.

  • Intel

    • Intel işlemciler (örneğin, Intel 4004, 8080, 8086) için Intel Assembly dilini geliştirdi ve yaygınlaştırdı.

    • Günümüzde x86 ve x86-64 (AMD64) mimarilerinin assembly dilleri, Intel ve AMD tarafından tanımlanır.

  • Motorola

    • Motorola işlemciler (6800, 68000) için Motorola Assembly dillerini geliştirdi.

  • Texas Instruments

    • Erken mikroişlemciler ve DSP’ler için Assembly dilleri sundu.


Önemli Üniversiteler ve Araştırma Merkezleri:

  • Cambridge Üniversitesi

    • İlk assembly dil konseptlerinden birini (EDSAC Initial Orders) geliştirdi.

  • MIT (Massachusetts Institute of Technology)

    • 1950’lerde ve 1960’larda farklı bilgisayar sistemleri için çeşitli Assembly türevleri üzerinde çalıştı.

  • University of London (Birkbeck College)

    • Kathleen Booth aracılığıyla Assembly konseptine erken dönem katkıda bulundu.


Assembly Dilinin Günümüzdeki Durumu:


Assembly günümüzde çoğunlukla Intel ve AMD gibi büyük işlemci üreticileri tarafından işlemcilerin komut seti tanımlarına göre şekillendirilir ve yönetilir. Artık büyük ölçüde standartlaşmıştır ve işlemci mimarisine göre şekil değiştirmektedir.


Sonuç ve Özet:


Assembly dili tek bir geliştiriciye ya da kuruma mal edilemeyecek kadar temel ve geniş kapsamlıdır. Başlangıcında IBM, Cambridge Üniversitesi, MIT ve Birkbeck College gibi kuruluşların ciddi katkıları olmuştur. Sonraki süreçte Intel, AMD, Motorola gibi firmalar, modern Assembly dillerini geliştirerek günümüzdeki hâline ulaştırmıştır.


Assembly dilinin hikâyesi, birden fazla kurumun, üniversitenin ve şirketin ortak tarihidir.


Comments