Mzsmunna
10/16/2019 - 10:02 AM

TST


.MODEL SMALL
.STACK 100H
.DATA

     a DB 'INPUT: $'
     b DB 'OUTPUT: $'
     
     c DB 'EXIT.$'
     
     d DB 0DH,0AH,'$'
     
     e DB 'ERROR.$'


.CODE


MAIN PROC
    
    
    MOV AX,@DATA
    MOV DS,AX
    




INPUT:
    
    MOV AH,9
    LEA DX,a
    INT 21H
    
    
    MOV AH,1
    INT 21H
    MOV BL,AL
    
   
    
    
    CMP BL,'0'
    JE LINE2
    
    
    CMP BL,122
    JG LINE3
    
    
    CMP BL,96
    JG LINE1
    
    
    
    CMP BL,90
    JG LINE3
    
    
    
    CMP BL,65
    JL LINE3
    
    
    MOV AH,2
    MOV CH,00100000B
    INT 21H
    
    
    OR BL,CH
    JZ OUTPUT
    JNZ OUTPUT
    
    
LINE1:
    
    
    MOV AH,2
    MOV CL,00100000B
    INT 21H
    
    XOR BL,CL
    JZ OUTPUT
    JNZ OUTPUT


    
    
OUTPUT:
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    
    LEA DX,b
    INT 21H
    
    
    
    MOV AH,2
    MOV DL,BL
    INT 21H
    
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    
    JMP INPUT2
    
    
    
;OUTPUT2:
 ;
  ;  MOV AH,9
   ; LEA DX,d
    ;INT 21H
     ;
    
   ; LEA DX,b
    ;INT 21H
    
    
    
;    MOV AH,2
 ;   MOV DL,BL
  ;  INT 21H
    
    
   ; MOV AH,9
    ;LEA DX,d
    ;INT 21H
    
   ; 
    ;JMP INPUT    
    
    
    
LINE2:
    
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    MOV AH,9
    LEA DX,c
    INT 21H
     
     
    JMP EXIT 
    
    
LINE3:    
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    MOV AH,9
    LEA DX,e
    INT 21H
    
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    
    JMP INPUT
    
    
    
    
    
INPUT2:
    
    MOV AH,9
    LEA DX,a
    INT 21H
    
    
    MOV AH,1
    INT 21H
    MOV BL,AL
    
   
    
    
    CMP BL,'0'
    JE LINE5
    
    
    CMP BL,122
    JG LINE6
    
    
    CMP BL,96
    JG LINE4
    
    
    
    CMP BL,90
    JG LINE6
    
    
    
    CMP BL,65
    JL LINE6
    
    
    MOV AH,2
    MOV CH,00100000B
    INT 21H
    
    
    OR BL,CH
    JZ OUTPUT2
    JNZ OUTPUT2
    
    
LINE4:
    
    
    MOV AH,2
    MOV CL,00100000B
    INT 21H
    
    XOR BL,CL
    JZ OUTPUT2
    JNZ OUTPUT2


    
    
OUTPUT2:
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    
    LEA DX,b
    INT 21H
    
    
    
    MOV AH,2
    MOV DL,BL
    INT 21H
    
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    
    JMP INPUT2
    
    
    
;OUTPUT2:
 ;
  ;  MOV AH,9
   ; LEA DX,d
    ;INT 21H
     ;
    
   ; LEA DX,b
    ;INT 21H
    
    
    
;    MOV AH,2
 ;   MOV DL,BL
  ;  INT 21H
    
    
   ; MOV AH,9
    ;LEA DX,d
    ;INT 21H
    
   ; 
    ;JMP INPUT    
    
    
    
LINE5:
    
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    MOV AH,9
    LEA DX,c
    INT 21H
     
     
    JMP EXIT 
    
    
LINE6:    
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    MOV AH,9
    LEA DX,e
    INT 21H
    
    
    MOV AH,9
    LEA DX,d
    INT 21H
    
    
    JMP INPUT2    
    
    
    
    
    
    
    
    
    
    
    

EXIT:
    
    
    MOV AH,4CH
    INT 21H
    
    
    

    
    
    MAIN ENDP

END MAIN