bugün

makine diline en yakın olan dildir.ifadeler 0 1 le değil de sembollerle ifade edilir.düşük düzey(az kullanılan) bilgisayar dillerindendir.ascii diye de gösterilebilir.
makine dilinde program yazmak çok zor olduğu için geliştirilmiştir. bütün işlemler 0 ve 1 ler yerine ingilizce kelimelerden türetilen kolay sembollerden oluşmuştur. "add, sub, mov, lnc.." kullanılan sembollere örnek olarak gösterilebilir.
ing. montaj
ing. meclis aynı zamanda.
(bkz: cracking)
isvicreli bilim adamlarinin yaptigi arastirmaya gore assembly bilen insanlarin beynindeki kivrim sayisinin bilmeyen insanlara nazaran daha fazla oldugu ispatlanmis. * ayrica konu ile ilgili bir atasozu de vardir:

"hic assembly bilenle bilmeyen bir olur mu..."

atalarimiz cok ileri gorusluymus gercekten.
yüksek seviyeli dillere göre daha küçük, daha az yer kaplayan ve daha hızlı icra edilebilir kodlar üretilebilinen düşük seviyeli dil. ayrıca Donanım hakkında daha fazla detay bilmeyi gerektirir.

(bkz: kayış koparma yöntemleri)
cınlı bır yuzbasının kaybettıgı askerlerını bulma mucadelesını anlatan bır cok otorıte tarafından savıng prıvate ryan dan sonra en ıyı savas fılmı olarak gosterılen fılmdır.kore savasını anlatır.cok gercekcı savas sahnelerıyle savas fılmı sevenler ıcın yeterı doyuruculuktadır.
.NET ile beraber daha fonksiyonel ve daha keyifli hale gelmis olan inanilmaz icat.
bir toplama işlemi için 10 satır kod yazmanız gereken nacizane programlama dilidir.
(bkz: montaj hatti)
makine diline en yakin dildir. crackerlar bu dili cok severler ancak, diger yandan da pekcok programlama dilinin de altyapisi bu dil uzerine oturur. ancak .net ciktiktan sonra bambaska bi arayuze ve mantiga kavusmustur.
komutları;

STO - (bir adrese değer saklamak için),

LOAD - (belli bir adresteki değeri akümülatöre yüklemek için) (bkz: aritmetik mantık birimi),

IN - (kullanıcıdan input "girdi" değeri alınmasını sağlar ve bir adrese kaydeder),

ADD - (belirli bir adreste toplama işlemi yapar ve aynı adrese yeniden yazar),

Sub- (çıkarma işlemidir toplama işlemi gibi eski değerin üzerine yazar mevcut adreste),

OUT - (sonucu ekrana yazar),

HLT - (işlemi sonlandırır),

DAT - (veri değeri atar),

Br - (var olan işlemden şartsız çıkmayı sağlar yani belirli döngüden çıkmayı),

Brp - ( programdaki sonraki işleme belli şartlar altında geçmeyi sağlar. eğer A>=0 ise),

Brz - (programdaki sonraki işleme belli şartlar altında geçmeyi sağlar. eğer a=0 ise)

şeklindedir.
c veya c++ da çocuk oyuncağı olan işleri yapmak için akla karayı seçtiren. makina dili.
c plus plus ile 23004 satır olan programım, assembly ile 5.905.433 satır.
bütünleştirici.
az sayıdaki komutuyla (biraz daha zahmete girilse de) ve kullanım kolaylığı ile gönlümüze taht kurmuş compiler, bir mikroişlemci ile insan arasındaki köprü. az kullanılsa da çoğu programcı bilir. hatta reklamı bile var:

- anne, ben bu gece yemeğe gelmicem.
- aa? neden kızım?
- arkadaşlarla çok güzel bi program kullanıcaz
- yoksa assembly mi kullanacaksınız?
- aa, sen assembly yi biliyo musun?
- ah kızım nefis komutlarını ve emulatörünü, tutorial zımbırtısını kısacası assembly yi kim bilmez...
- e ne duruyorsunuz o zaman babamı da alın gelin...
- assembly...
- assembly.
- assembly.
- assembly bağlarbaşı mevkiinde otoparka girmeden hemen solda...
*
mikroişlemci dilinin sembolleştirilmiş halidir, bu yüzden sembolik makine dili olarak bilinir. c gibi tüm platformlarda derlenemediği daha doğrusu zaten derlenecek değil satır satır yorumlanacak kodlar içerdiğinden için her mikroişlemcinin farklı komut setine göre bir iş farklı biçimlerde yaptırılır. x86 intel serisi işlemciler için olanı meshurdur. bir de windows işletim sisteminde debug adlı program 16 bitlik bir x86 yorumlayıcısıdır, bununla interrupt fonskiyonlarını kullanarak sabit diske takla attırabilirsiniz. ama asm programcılığında kullanılan asıl derleyiciler 32 bitliktir ve bunları internetten beleşe çekebilirsiniz.

sistem programcılığında bunun yerine çoğunlukla c kullanılır, asm virüs programcılığında tercih edilir. mikroişlemci ve bellek hakkında detaylı bir bilgi bilmek şarttır.
bugün "bilgisayar, programlama biliyorum" diyen bir çok kişinin adından dahi haberdar olmadığı alt seviye programlama dili.

sadece adreslere kod atama ve registry'ler ile işlem yapan ama tüm üst seviye programlama dillerinden daha hızlı program çalıştırandır.

mesela çarpma işlemini ard arda yapılan toplamalar, bölme işlemini ise çıkarma işlemleri ile yapabildiğiniz, sinüs, kosinüs gibi komplike hesaplar için ise taylor, maclaurin serileri gibi yüksek matematik konularını bilmenizi gerektiren dildir. zx spectrum ve commodore 64 zamanlarında kasmışlığımız vardır.

MOV AL, #61h gibi komutları mevcuttur. mesela bu kod; hexadecimal 61 (decimal 97) değerini AL isimli registery'e ata anlamına gelir.

dut ağacının kodunun yazıldığı dildir. *
daha çok mikrodenetleyici programlamak için kullanılır. başka da bir boka yaramaz afedersiniz.
dos zamanında çok daha yaygın ve kral olan mnemonic kodlarla yazılan makina dili. tabi windows ve visual dillerle beraber ortaya çıkmaya başlayan hayvani boyutlu projeler, oyunlar ve bilumum ticari programlar için taklaya gelmiştir. bugün hiç kimse komple ticari bir porgramı assembly ile yazmaya kalkacak kadar deli değildir. assembly bugün kendine ancak büyük projeler içindeki ufak modüllerde (donanım ağırlıklı işlemlerin gerçekleştirildiği yada hızın gereksinim duyulduğu), driver gibi donanım ve mikroişlemciye hitap eden uygulamalarda, kısmen virüs yazılımında, ve lisanslı programların ve korumalı içeriğin kırılması (hacking/cracking) uygulamalarında ileri uç programcılık alanında yer bulabilmektedir. onun haricinde cümle alemin yegane kralı c++ 'dır.
assembly, sisteme hakim bir dil olduğundan ve içeriğine çalışma esnasında dışarıdan müdahale edilebildiği için genelde kernel , hardware driver , debugging ve cracking kavramlarında kullanılan, anlaşılması güç, her programlama diline dahil olabilen programlama dili. genel olarak 'nasm' derleyicisiyle kullanılır. (alternatif olarak linux kullanıcıları as ile, windowsçular ise masm veya tasm da kullanabilir.)

isterseniz derleyin, hangisi en hızlı kendiniz karşılaştırın
(hepsi ekrana "hello uludagsozluk" yazdırıyor):

assembly: (nasm) [33bayt]
---------
org 100h
basla:
mov si,merhaba
call yazdir
ret

yazdir:
mov dx,si
mov ah,9
int 21h
ret
merhaba db 'hello uludagsozluk','$'
----------
c / c++ : (gcc) [17kb]
----------
#include <stdio.h>
int main()
{
printf("hello uludagsozluk\n");
return 0;
}
----------
java: (javac) [400bayt]
----------
public class test3
{
public static void main(string args[])
{
system.out.println("hello uludagsozluk");
system.exit(1);
}
}
----------
c#: (csc) [3.50kb]
----------
using system;
class uludag
{
public static void main(string[] args)
{
console.writeline("hello uludagsozluk");
}
}
----------

sonuç: aynı işi assembly ile daha az boyutla yaptık. hız sıralaması ise:
kısa.................................uzun
assembly < c/c++ < java < c#
sağlam ve güçlü bir programlama dilidir. c++ ile karşılaştıranlar C++ veya c dilinde daha az komut yazıldığını söylerler. ama c dilinde hazır kütüphaneler kullanıldığından daha az satır yazılır. assembly nin de avantajı bu yöndedir. esnektir. hazır nesneler kullanmak yerine her şeyi programcı tanımlar.
pic programlamak için kullanılır.
c plus plus ın yahut c nin bir versiyonudur denebilir.

assembly de, c de 3 satırda yazacağınız bir kodu bir sayfada yazarsınız belki ama sonuç çok daha verimli ve detaylıdır.

en küçük alanlara dahi müdahele edilebilir.