ADMINISTRACION DE BASE DE DATOS

miércoles, 27 de febrero de 2019

PROGRAMA EDAD MAYOR O MENOR: EMU8086


org 100h

.model small
.stack 64 ;segmento de pila

.data                         
diez db 10 ;variable para poder convertir dos caracteres (el primer caracter multiplica al 
;10 para convertir en decimal)
num1 db 0; variable para la edad
mensaje db "INGRESA TU EDAD: ", "$"
mensaje2 db "ERES MAYOR DE EDAD" , "$" 
mensaje3 db "ERES MENOR DE EDAD" , "$"

.code ;seccion del codigo

    inicio proc Far ;inicia procedimiento
        mov ax, @data ; direccionamiento del segmento datos
        mov ds, ax ;los datos se mueven a ax
        
        ;primer mensaje
        mov ah, 09
        lea dx, mensaje
        int 21h ;interrupcion necesaria  
        
        
        ;entradas desde el teclado
        
        mov ah, 01; para que el cursor este esperando un valor
        int 21h    
        sub al, 30h ;convirtiendo el valor   
        mul diez ;se multiplica el numero ingresado para decenas
        mov num1, al
        
        ;pedir valor  2
        
        mov ah, 01
        int 21h
        sub al, 30h ;resta lo que se ingresa en "al"
        add num1, al ;suma la multiplicacion con lo que se tiene en al 
        ;(se suma a las decenas obtenidas)
        mov al, num1
        
        
        cmp al, 18 ; if (compara si el registro al=18)
        jge mayor ;(en caso de que sea mayor, etiqueta=Es mayor)
        jmp menor ;en caso de que no se cumpla, Etiqueta=menor
        
        mayor: 
            mov ah, 09
            lea dx, mensaje2
            int 21h ;interrupcion necesaria   
            jmp fin     
            
        menor:
        
            mov ah, 09
            lea dx, mensaje3
            int 21h ;interrupcion necesaria
            
        fin:
            mov ax, 4C00H
        
      
      
      inicio endp
        

ret



No hay comentarios:

Publicar un comentario