Task
Task
MODEL SMALL
.STACK 100H
.DATA
M1 DB "Enter a character: $"
CHAR DB ?
M3 DB 0AH,0DH, "THANK YOU. $"
M2 DB 0AH,0DH, "OUTPUT IS: $"
.CODE
MAIN PROC
MOV AX, @DATA
MOV DS, AX
; Print a newline
MOV AH, 9 ; 9 is string output and AH is the
higher byte
LEA DX, M2 ; Load the address msg
INT 21H
LOOP_START:
MOV AH, 2 ; Interrupt character
MOV DL, CHAR ; Load the character to print
INT 21H
DEC CX ; Decrement counter
JNZ LOOP_START ; Repeat until CX == 0
; Display message
MOV AH, 9
LEA DX, M3
INT 21H
.MODEL SMALL
.STACK 100H
.DATA
PROMPT DB "Enter Characters: $"
OUTPUT DB 0AH, 0DH, "Output is: $"
VAR DB 3 DUP('$') ; Reserve 3 bytes: 2 for characters, 1 for the end-of-string
marker '$'
.CODE
MAIN PROC
; End program
MOV AH, 4CH
INT 21H
MAIN ENDP
END MAIN
.MODEL SMALL
.STACK 100H
.DATA
M1 DB "Enter Any Number: $"
M2 DB 0AH,0DH, "The ENTERED Number is LESS than 5$"
M3 DB 0AH,0DH, "The ENTERED Number is GREATER than 5$"
M4 DB 0AH,0DH, "The ENTERED Number is EQUAL to 5$"
.CODE
MAIN PROC
MOV AX, @DATA
MOV DS, AX
; User input
MOV AH,1 ; Take input where AH is the higher bytes
INT 21H
SUB AL,'0' ; Convert ASCII to integer
LESS:
MOV AH,9
LEA DX,M2
INT 21H
JMP END ; Exit after displaying message
GREATER:
MOV AH,9 ; 9 is string output and AH is the higher byte
LEA DX,M3
INT 21H
JMP END ; Exit after displaying message
EQUAL:
MOV AH,9 ; 9 is string output and AH is the higher byte
LEA DX,M4
INT 21H
END:
; End the program
MOV AH,4CH ; Hexa decimal value to start exit
INT 21H