Create an assembly program that would check if the input character is a numeric character. alphabet (letter) or a special character.
HINT: Each character has a corresponding decimal and hex values in the ASC table. Use ASCII table.
; DosBox
DATA SEGMENT
msgEnter db "Char: $"
AlphCh db " - character is an alphabet$"
NumberCh db " - character is a number$"
SpecialCh db " - character isa special symbol$"
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA,CS:CODE
START:
MOV AX,DATA
MOV DS,AX
mov dx, offset msgEnter
mov ah, 9
int 21h
; wait for any key press:
mov ah, 0
int 16h
mov ah, 0eh
int 10h
; Check char
cmp al,'0'
jl special ; char < '0'
cmp al,':'
jl number
cmp al,'A'
jl special
cmp al,'['
jl alph ;
cmp al,'a'
jl special
cmp al,'{'
jl alph ;
jmp special
number:
mov dx, offset NumberCh
mov ah, 9
int 21h
jmp EXIT_PROG
alph:
mov dx, offset AlphCh
mov ah, 9
int 21h
jmp EXIT_PROG
special:
mov dx, offset SpecialCh
mov ah, 9
int 21h
EXIT_PROG: ; Program is terminated
MOV AH,4CH
INT 21H
Comments
Leave a comment