Assembler programlama dili, çogu zaman özel alanlarda gelistirilen programlarda kullanilan alt düzel bir Programlama dili olarak tanimlanir. Bu dilin komutlari, bilgisayarin dogrudan islettigi makine dili komutlarinin birebir karsi ligidir. Bu nedenle bu dil için makine dili de denilebilir.
Her ne kadar uzman programcilarin özel alanlarda kullandigi bir dil olarak tanimlansa da, programcilar istedikleri takdirde her türlü uygulamayi bu dil ile gelistirebilirler yada kullandiklari üst düzey dil altindan çagirabilecekleri procedurler yazabilirler. Çünkü hemen hemen her dilde assembler için destek bulunmaktadir.
Dilin en büyük avantaji CPU çevrebirimlerinin ve ana bellegin çok iyi bir sekilde kontrolünü saglamasidir. Ayrica isletim sistem fonksiyonlarini da çok kolaylikla kullanmak mümkündür. Assembler program dili derleyicisi kullanilan ko mutlarin birebir makine dili karsiliklarini üretir. Bu nedenle bu dil ile olusturulan programlar olabilecek en kisa programlar olurlar.
Bir assembler programi çalisabilir bir programin tüm kesimlerinin tam olarak tanitilmasi ile olusturulabilir. Bu nedenle bir assembler programda minimum üç ana kesim bulunmalidir.
1 - STACK Segment
2 - DATA Segment
3 - CODE Segment
Basit bir assembler programi;
STACK SEGMENT PARA ‘STACK’
DB 64 DUP (‘STACK’)
STACK ENDS
DATA SEGMENT PARA ‘DATA’
MESAJ DB ‘BU BiR ASSEMBLER PROGRAMIDIR $’
DATA ENDS
CODE SEGMENT PARA ‘CODE’
ANA PROC FAR
ASSUME CS;CODE, DS;DATA, ES;DATA, SS;STACK
PUSH DS
SUB AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
MOV ES,AX
LEA DX,MESAJ
MOV AH,09
INT 21H
RET
ANA ENDP
CODE ENDS
END