You are on page 1of 5

Name:

Uzair Ahmad
Registration No:
FA19-BCS-084-B
Subject:
Microprocessor and Assembly
Language lab
Submitted to:
Engr. Abdul Khaliq
Date:
10-06-2021
Assignment 4

Code:

.MODEL SMALL
.STACK 100H

PRMPT_MSG_1 DB 'Enter a hexadecimal digit "O" ... "9" OR "A"..."F":$"

OUTPUT_PRMPT DB OAH, ODH, 'OUTPUT :$'

ASK PROMPT DB OAH,ODH, 'Do you want another input: $'

.CODE

MAIN PROC
MOV AX,@DATA
MOV DS, AX

TOP:

MOV AH,9
LEA DX, PRMPT_MSG_1
INT 21H
MOV AH,1

INT 21H
MOV BL, AL

CMP BL,30H
JL TRY_MSG

CMP BL,46H
JG TRY_MSG

CMP BL,39H
JLE DIGIT

MOV AH,9
LEA DX,OUTPUT_PRMPT
INT 21H
SUB BL,11H
MOV AH,2

MOV DL,31H
INT 21H

MOV DL,BL
INT 21H

AGAIN:

MOV AH,9
LEA DX,ASK PROMPT

INT 21H
MOV AH,2
MOV DL,OAH
INT 21H
MOV DL,ODH

INT 21H
CMP BH,'Y'
JE TOP

CMP BH,'y'
JE TOP
JMP END

DIGIT:

MOV AH,9
LEA DX,OUTPUT_PRMPT
INT 21H

MOV AH,2
MOV DL,BL
INT 21H
JMP AGAIN
TRY_MSG:
MOV AH,9

LEA DX,PROMPT_TRY_MSG
INT 21H
JMP TOP

END:

MOV AH,4CH
INT 21H

MAIN ENDP
END MAIN

OUTPUT SCREENSHOTS:

You might also like