martes, 19 de febrero de 2019

Ejercicio del dia 19 de febrero del 2019

#Ejercicio en EMU8086 que al ingresar una cierta edad despliega en pantalla si eres menor o mayor o edad a base de un comparador que toma como particion de las edades entre mayor o menor el numero 18.

este es el codigo del programa.


org 100h
.model small
.stack 64 ;segmento de pila
.data     
diez db 10;variable para poder convertir dos caracteres (el primer caracter
; se 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  ","$"
; add your code here           

.code ;seccion del codigo
    inicio proc Far ;inicia el procedimiento
        mov ax,@data;direccionamiento del segmento de datos
        mov ds,ax;los datos se mueven a ax
       
        ;primer mensaje
        mov ah,09
        lea dx,mensaje
        int 21h;interrupcion necesaria
       
        ;entradadas desde el teclado
       
        mov ah,01;para que el cursos este esperando un valor
        int 21h
        sub al,30h;convirtiendo el valor
        mul diez;se multiplica el numero para decenas
        mov num1,al
       
        ;pedir el valor dos
       
        mov ah,01
        int 21h
        sub al,30h;resta el que se ingresa en "al"
        add num1,al;se suma las decenas obtenidas
        mov al,num1
       
        cmp al,18;compara el registro al con el valor numero 18 para poder desplegar
       
        jge mayor;en caso de que saea mayor utilizo el je lo puedo mandar a una etiqueta y de no vimplostse el prorama va a continuar con la siguiente linea que seria jmp
        jmp menor
       
        mayor:
            mov ah,09
            lea dx,mensaje2
            int 21h
            jmp fin
       
       menor:
            mov ah,09
            lea dx,mensaje3
            int 21h
       
                 
       fin:
            mov ax,4C00H
       
       inicio endp

ret

Capturas de pantalla del programa corriendo:

edad mayor a 18


 cuando introduces un numero menor

No hay comentarios.:

Publicar un comentario

Unidad 3-ejemplo con macros

Programa que que imprime valores numericos en hexadecimales pero haciendo la utilizacion de macros. include 'emu8086.inc' Mostra...