برای ایجاد برنامه به سه ابزار نیاز است: یک ادیتور متن، یک اسمبلر برای تبدیل برنامه به فایل مقصد و یک لینکر برای تولید فایل اجرائی.
برنامه اسمبلی را در یک ادیتور متن نوشته و با پسوند .asm ذخیره کنید. فراموش نکنید که حتما از یک ادیتور اسکی استفاده کنید. توسط اسمبلر (masm.exe یا tasm.exe) از فایل مبدا .asm فایل مقصد .obj را ایجاد کنید. اسمبلر برنامه زبان اسمبلی را به کد ماشین تبدیل می کند. اگر خطائی در برنامه وجود داشته باشد اسمبلر خطا را گزارش می دهد. لینکر (link.exe یا tlink.exe) از یک یا ترکیب چند فایل .obj یک برنامه قابل اجرا از نوع .exe یا .com را می سازد.
مثال. برنامه first.asm را در ادیتور متن ذخیره کنید. سپس در خط فرمان سیستم عامل، در محلی که اسبلر نصب شده است، دستورات زیر را به ترتیب وارد کنید تا فایل اجرائی first.exe ایجاد شود.
C:masm>masm first
C:masm>link first
C:masm>first
مثال: در برنامه زیر دو عدد با هم جمع می شود.
.MODEL small
.STACK [size]
.DATA
number1 DW 0800h ;=128
number2 DW ffebh ;=-493
sum DW ? ;store result
.CODE
begin:
mov AX,@Data
mov DS,AX
mov AX,number1 ;get first number in AX
add AX,number2 ;add AX with second number
mov sum,AX ;store result in Sum
mov AX,4c00h
int 21h
END begin
مثال: تکه برنامه زیر اعداد ۱ تا ۱۰ را در آرایه ای از نوع word ذخیره می نماید.
.MODEL small
.STACK [size]
.DATA
Array DW 10 dup(?)
.CODE
begin:
mov AX,@Data
mov DS,AX
mov CX,1
mov SI, offset Array
Forl:
mov [SI], CX
inc SI
inc SI
cmp CX,10
je endf
inc CX
jmp forl
Endf:
mov AX,4c00h
int 21h
END begin
برای دسترسی به عناصر آرایه معمولا از عملوند غیرمستقیم ثباتی استفاده می شود. برای تخصیص آدرس آفست یک آرایه می توان از دستور LEA هم استفاده کرد. دقت کنید چون عناصر آرایه دو بایتی هستند هربار دو واحد به SI اضافه می شود. در حالتی که عناصر آرایه از نوع بایت تعریف می شوند به اشاره گر آرایه یک واحد اضافه می شود.
مثال: کاراکتر * را نمایش می دهد.
.MODEL small
.STACK [size]
.CODE
main PROC
mov AH,2h
mov DL,2ah
int 21h
mov AX,4c00h
int 21h
main ENDP
END main