sábado, 19 de mayo de 2018

MACRO DE ARMANDO MONRREAL

       
org 100h

inicio macro ;declaramos la macro, le damos el nombre de inicio
mov ax,@data ;Cargamos el segmento de datos.
mov ds,ax
mov dx,ax
endm

imprime macro numero ;Nuestra segunda macro se llama imprime, nuestro parametro es numero
mov ah,02h
mov dl,numero ;Indica que mueva al registro DL lo que pasamos como parametro.
add dl,2Fh ;suma 2Fh para imprimir el numero real.
int 21h
endm

.data 
mensaje db "Programa de macro que imprime del 9 al 0",13,10,"$"
mensaje2 db 13,10, "Loop que imprime del 0 al 9",13,10,"$"
num db 0 ;declaramos nuestra variable.

.code
mov cx,10
lea dx,mensaje
mov ah,09h
int 21h 
inicio:
mov num,cl
imprime num ;Llamamos al macro con el valor de nuestra variable.
loop inicio ;repite ciclo 

lea dx,mensaje2
mov ah,09h
int 21h

MOV DL, "0";se transfiere la letra 0 al registro de datos en el byte bajo
MOV CX, 10;se transfiere 10 al registro contador
PRINT_LOOP:;va a imprimir hasta acabar las 26 interaciones
MOV AH, 02;se transifiere 02 al acumulador de byte alto
INT 21h; se realiza la interrupcion del dato ascii leido desde el teclado
INC DL;siguiente caracter numerico
LOOP PRINT_LOOP;continua hasta acabar las 10 vueltas

end
       

No hay comentarios:

Publicar un comentario

EXPOSICIÓN 2: PROGRAMACION DEL PUERTO USB

RESUMEN DE LA EXPOSICIÓN DE PUERTOS USB PUERTO USB BUFFER DE VIDEO EN MODO TEXTO  Se llama modo texto a cualquier modo de vi...