Mzsmunna
10/16/2019 - 9:03 AM

HEXA_PRINT


.MODEL SMALL
.STACK 100H
.DATA
MSG1 DB 'ENTER HEX:$' 
MSG2 DB 'DECIMAL:$'
MSG3 DB 'WANT AGAIN(Y/y):$'
MSG4 DB 'ILLEGAL!!!$'
MSG5 DB 'ILLEGAL OVERLOADED!!$'

.CODE
MAIN PROC
    
    MOV AX,@DATA
    MOV DS,AX
    
    MOV CH,0
    
 LEVEL:
    
    LEA DX,MSG1
    MOV AH,9
    INT 21H 
    
    MOV AH,1
    INT 21H 
    MOV BL,AL
    
    MOV AH,2
    MOV DL,0DH
    INT 21H
    MOV DL,0AH
    INT 21H
    
    LEA DX,MSG2
    MOV AH,9
    INT 21H 
    
    

    
    
    
        
    
    MOV CL,9
    ADD CL,48
    CMP BL,CL
    JG L1
    
    MOV DL,BL
    MOV AH,2
    INT 21H
    JMP EXIT
    
    L1:
   
    
    CMP BL,'A'
    JE L2 
    
    CMP BL,'B'
    JE L3 
    
    CMP BL,'C'
    JE L4
    
    CMP BL,'D'
    JE L5
    
    CMP BL,'E'
    JE L6 
    
    CMP BL,'F'
    JE L7 
    
    INC CH
    LEA DX,MSG4
    MOV AH,9
    INT 21H
    
    CMP CH,3
    JE ILLEGAL 
    
    JMP EXIT
    
    ILLEGAL: 
    MOV AH,2
    MOV DL,0DH
    INT 21H
    MOV DL,0AH
    INT 21H
    
    LEA DX,MSG5
    MOV AH,9
    INT 21H
    JMP CLOSE
    
    L2: 
     MOV DL,49
    MOV AH,2
    INT 21H
    MOV DL,48
    INT 21H
    JMP EXIT
    
    
    
    L3:
     MOV DL,49
    MOV AH,2
    INT 21H
    
    MOV DL,49
    INT 21H
    JMP EXIT
    
    
    
    
    L4:
     MOV DL,49
    MOV AH,2
    INT 21H
    MOV DL,50
    INT 21H
    JMP EXIT
    
    
    
    
    L5:
     MOV DL,49
    MOV AH,2
    INT 21H
    MOV DL,51
    INT 21H
    JMP EXIT
    
    
    
    
    
    L6:
     MOV DL,49
    MOV AH,2
    INT 21H
    MOV DL,52
    INT 21H
    JMP EXIT
    
    
    
    
    L7:
    MOV DL,49
    MOV AH,2
    INT 21H
    MOV DL,53
    INT 21H
    JMP EXIT
    
    
    
    EXIT: 
    
    MOV AH,2
    MOV DL,0DH
    INT 21H
    MOV DL,0AH
    INT 21H
    
    LEA DX,MSG3
    MOV AH,9
    INT 21H
    
    MOV AH,1
    INT 21H 
    MOV BL,AL
     
    MOV AH,2
    MOV DL,0DH
    INT 21H
    MOV DL,0AH
    INT 21H
    
    CMP BL,'Y'
    JE LEVEL
    CMP BL,'y'
    JE LEVEL
    
CLOSE: 
    MOV AH,4CH
    INT 21H
    MAIN ENDP
END MAIN