Programa que compara la edad

org 100h
.model small
.stack 64 ;segmento de pila
.data
    msg db "Ingrese su edad'$"
    msg1 db 13,10,"Eres mayor de edad.$"
    msg2 db 13,10,"Eres menor de edad.$"
    num1 db 0 ;Variable para la edad
    diez db 10 ;variable para poder imprimir dos caracteres y multiplicar el valor por 10    
    
.code ;Inicio del programa  
    inicio proc Far
    MOV AX,@DATA
    MOV DS,AX
    
    ;Despliega el mensaje 1
    MOV AH,09
    lea DX,msg
    int 21h
    
    ;Ingresa el numero
    MOV AH,01
    int 21h
    ;MOV num1,AX
    sub al,30h ;Convirtiendo a valor
    mul diez ;se multiplica el numero ingresado para las decenas
    mov num1,al ;se pasa a num la multiplicacion   
    
    ;Ingresa otro numero
    mov ah,01
    int 21h
    sub al,30h 
    add num1,al ;se suma a las decenas  
    mov al,num1
    
    ;Momento de evaluar  
    CMP AL,18
    JGE MAYOR ;En caso de ser mayor brinca aqui
    JMP MENOR ;en caso de ser menor de edad
    
    
    MAYOR:
    MOV AH,09
    lea DX,msg1
    int 21h 
    jmp fin
    
    
    MENOR: 
    MOV AH,09
    lea DX,msg2
    int 21h
    jmp fin
    
    
    fin:
    mov ax,4c00h
    

    
    
    inicio endp
    end

ret




Comentarios

Entradas populares de este blog

Letras de colores con emu8086 Alex

Ejemplos de la libreria emu8086.inc

Programa de numeros decimales y hexadecimales (Mejora)