miércoles, 20 de febrero de 2019

Obtener el promedio y si es aprobatorio

Aquí les va el código del programa

.MODEL SMALL
.STACK 64
.DATA
    MSG1 DB 'INGRESA UNA CALIFICACION (SEGUIDO DE UN ENTER): ',13,10,'$'
    APROBADO DB 13,10, 'APROBADO$',
    REPROBADO DB 13,10, 'REPROBADO$'
 
    VAR1 DW ?, '$' ;de tipo write (escritura)
    VAR2 DW ?, '$'
    VAR3 DW ?. '$' ;para guardar enter
 
.CODE ;inicia la seccion de codigo
RESULTADO PROC FAR
    ;-----------iniciar
    MOV AX,@DATA
    MOV DS,AX
 
    ;----------desplegar el primer mensaje 
    MOV ah,09H
    LEA dx,MSG1
    INT 21H
 
    ;----------introducir un caracter
    MOV AH,01
    INT 21H
    MOV VAR1,AX
 
    ;----------introducir el segundo caracter
    MOV AH,01
    INT 21H
    MOV VAR2,AX
 
    ;----------introducir un caracter para enter
    MOV AH,01
    INT 21H
    MOV VAR3,AX
 
    ;----------uso de if y comparacion
    CMP AL,13 ; pregunta si en 'al' hay un enter
    JE continue
    JMP mayor
 
CONTINUE:
    MOV AX,VAR1
    CMP AL,037H ;37h es igual a 7 en hexadecimal, 55 es 7 en ASCII
    JGE MAYOR
    JMP MENOR
 
MAYOR:
    MOV AH,09H
    LEA DX,APROBADO
    INT 21H
    JMP FIN
MENOR:
    MOV AH,09H
    LEA DX,REPROBADO
    INT 21H
    JMP FIN
 
FIN:
    MOV AH,04CH
    INT 21H
 
RESULTADO ENDP ;fin del procedimiento
END RESULTADO




No hay comentarios:

Publicar un comentario