programa de compañero silva con macro
;macro Eduardo Silva Vanoye emu 8086
imp macro n ;Nuestra macro se llama imprimir, nuestro parámetro es numero
mov ah, 09 ;salida de una cadena de caracteres
lea dx, msj2 ;se imprime el primer mensaje
int 21h
mov ah,04ch ;Finaliza el programa.
int 21h
endm
.model small
.stack 64
.data
num db 0 ;declaramos nuestra variable.
msj db "Ingrese ID: $"
msj2 db 13, 10, "Eduardo Silva Vanoye ISC $"
.code ;inicia el programa
mov ax, @data ;se mueve data a ax
mov ds, ax
mov ah, 09 ;salida de una cadena de caracteres
lea dx, msj ;se imprime el primer mensaje
int 21h ;interrupcion de sistema
mov ah, 01 ;peticion de leer caracter
int 21h ;interrupcion de sistema ;se resta 30h para obtener el numero
mov num, al ;se mueve al a n1
cmp al,32h ;verifica si presiono num
je po
jmp fin ;finaliza en caso de no recibir respuesta de Num
fin:
mov ax,4c00h
int 21h
po:
imp num ;Llamamos al macro con el valor de nuestra variable.
end
imp macro n ;Nuestra macro se llama imprimir, nuestro parámetro es numero
mov ah, 09 ;salida de una cadena de caracteres
lea dx, msj2 ;se imprime el primer mensaje
int 21h
mov ah,04ch ;Finaliza el programa.
int 21h
endm
.model small
.stack 64
.data
num db 0 ;declaramos nuestra variable.
msj db "Ingrese ID: $"
msj2 db 13, 10, "Eduardo Silva Vanoye ISC $"
.code ;inicia el programa
mov ax, @data ;se mueve data a ax
mov ds, ax
mov ah, 09 ;salida de una cadena de caracteres
lea dx, msj ;se imprime el primer mensaje
int 21h ;interrupcion de sistema
mov ah, 01 ;peticion de leer caracter
int 21h ;interrupcion de sistema ;se resta 30h para obtener el numero
mov num, al ;se mueve al a n1
cmp al,32h ;verifica si presiono num
je po
jmp fin ;finaliza en caso de no recibir respuesta de Num
fin:
mov ax,4c00h
int 21h
po:
imp num ;Llamamos al macro con el valor de nuestra variable.
end
Comentarios
Publicar un comentario