Ejemplo 1: Mostrar su nombre en pantalla mediante interrupciones
org 100h ;Todo lo escrito despues de " ; " son comentario
s ;escribir su nombre en pantalla jmp inicio ;salto incondicional a una etiqueta nombre db "Jorge Arce$" ;Para este caso el nombre tiene que terminar con $ inicio: ;etiqueta mov ah,9 ;con esto le digo a la interrupcion que escriba en pantalla mov dx,offset nombre ;con esto le indico la direccion del texto int 21h ;invoco a la interrupcion para escribir en panta lla int 20h ;invoco interrupcion para termina el programa ret Ejemplo 2: Imprimir HOLA Mundo ;Programa HOLA MUNDO DATOS SEGMENT MENSAJE DB "HOLA MUNDO$" DATOS ENDS PILA SEGMENT STACK "STACK" DB 200 DUP(0) PILA ENDS CODIGO SEGMENT ASSUME CS:CODIGO,DS:DATOS,SS:PILA PRINCIPAL PROC MOV AX,DATOS MOV DS,AX MOV AH,9 MOV DX,OFFSET MENSAJE INT 21H MOV AH,4CH INT 21H PRINCIPAL ENDP CODIGO ENDS END PRINCIPAL Ejmplo 3: Suma de 3 Numeros ;Programa SUMA DE 3 NUMEROS pila segment para stack "stack" dw 32 dup (0) pila ends datos segment para "datos" num1 dw 20 num2 dw 30 num3 dw ? datos ends codigo segment para "codigo" empieza proc far assume cs: codigo, ds: datos, ss:pila mov ax,datos mov ds,ax mov ax,num1 add ax,num2 mov num3,ax mov dx,num3 mov ax, 4C00H int 21H empieza endp codigo ends end empieza Ejemplo 4: Calcular la suma de 2 Numeros .;Calcular la suma de dos numeros (1Byte) ; realizar la impresion del resultado (SUMA)
.MODEL SMALL .STACK .DATA
DATA1 DB 52H ;Declaracion de variable DATA1, inicializada DATA2 DB 29H SUMA DB 0,'$' ;Declaracion de Variable SUM, no inicializada
.CODE ; Segmento codigo
START: ; Direccion Base del segmento datos MOV AX,@DATA MOV DS,AX
MOV DX, OFFSET SUMA ; Registro DS toma el valor de ax
END START Ejemplo 5: impresion e un mensaje fijo en pantalla ;Impresion de un mensaje fijo en pantalla ; comentarios .model tiny ; directiva de modelo de programacion .stack ; directiva de asignacion de segmento, zona de la pila .data ; directiva de asignacion de datos, memoria de datos ;Message db "Hola$" ; mensaje a escribir en pantalla Message db 0x48, 111, 6CH, 1100001b, 0x24 .code ; directiva para el segmento de codigo,memoria de progr ama start: ; inicio de programa mov dx,OFFSET Message ; offset en DX mov ax,SEG Message ; segmento en AX mov ds,ax ; DS:DX apunta al mensaje mov ah,9 ; funcion de llamada a servicio de pantalla int 21h ; llamada a servicio del DOS mov ax,4c00h ; instruccion de comprobacion para int 21h ; volver al DOS END start ; fin Ejemplo6: