; Loop de tamanio entre 1-9 (utilizando macro)
; David Alejandro Mendoza Martinez
org 100h
.model small ;Modelo de memoria small
.stack 64 ;Segmento pila
imprimir macro msj ;Macro para imprimir mensajes en pantalla
mov ah, 09 ;Salida de una cadena de caracteres
lea dx, msj ;Cargar la direccion de cadena en DX
int 21h ;Interrupcion de sistema
endm
datos segment ;Segmento de datos
mensaje db "Ingresa el numero de veces que se repetira el mensaje (1-9)",13,10,'$'
repetir db 13,10,"Repitiendo el ciclo $"
datos ends
codigo segment ;Segmento de codigo
assume cs:codigo, ds:datos ;Asignacion de segmentos
inicio: ;Funcion inicio
mov ax, datos ;Movemos el segmento datos a AX
mov ds, ax ;Movemos lo que esta en el registro AX a DS
imprimir mensaje
mov ah, 01 ;Entrada de caracteres con eco
int 21h ;Interrupcion de sistema
sub al, 30h ;Conversion a digito del caracter ascii
mov cl, al ;Movemos a CL(contador) lo que hay en AL
ciclo: ;Inicio del ciclo
imprimir repetir
loop ciclo ;Fin del ciclo
mov ax,4c00h ;Terminar con codigo de retorno
int 21h ;Interrupcion de sistema
end inicio ;Fin de la funcion inicio
codigo ends ;Cierre del segmento codigo
martes, 17 de abril de 2018
Ejercicio anterior de loop con macro
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario