Assembly dilini makine koduna çeviren programlara assembler denir. Assembler bir derleyici değildir. Derleyiciler bir kodun tamamını okurken, yorumlayıcı her satırı tek tek okumaktadır.
Assembly dili günümüzde çok az kullanılmaktadır. Cihaz sürücülerinde, embedded sistemlerde Assembly görmekteyiz. Üniversitelerin Bilgisayar Mühendisliği ve Bilişim Bilimleri, Elektrik- Elektronik Mühendisliği gibi bölümlerinde “Mikroişlemciler” dersi altında anlatılmaktadır.
Assembly dilinin dezavantajları
• Assembly dili mikroişlemci tipine göre değişir. Bir mikroişlemci için yazılan bir program başka bir mikroişlemcide çalışmayabilir.
• Assembly dilinde program yazmak için mikroişlemci içyapısı bilinmesi gerekir. Program taşınabilir platformdan bağımsız değildir.
• Assembly dilinde program yazmak yüksek seviyeli dillere göre daha zor ve zaman alıcıdır.
Assembly dilinin avantajları
• Bilgisayar donanımı üzerinde daha iyi bir denetim sağlar. İşlemcinizin gücünü en iyi şekilde ortaya koyabilecek tek programlama dilidir.
• Küçük boyutlu bellekte az yer kaplayan programlar yazılabilir. virüslerin yazımında kullanılırlar.
• Yazılan programlar daha hızlı çalışır. Çok hızlı çalıştıkları için işletim sistemlerinde kernel ve donanım sürücülerinin programlanmasında, hız gerektiren kritik uygulamalarda kullanılmaktadır.
• Herhangi bir programlama dili altında, o dilin kodları arasında kullanılabilir.
• İyi öğrenildiğinde diğer dillerde karşılaşılan büyük problemlerin assembly ile basit çözümleri olduğu görülür.
Örnek olarak iki sayıyı toplayan bir Assembly kodu
mov r0, #4
mov r1, #5
add r2, r1, r0
=> Çıktının 9 olmasını bekleriz.