Q. Example of Input a Single Digit?
Input a Single Digit for example (0,1, 2, 3, 4, 5, 6, 7, 8, 9)
CODE SEGMENT
...
; Read a single digit in BL register with echo. No error check in the Program
MOV AH, 01H
INT 21H
; Assuming that the value entered is digit, then its ASCII will be stored in AL.
; Suppose the key pressed is 1 then ASCII '31' is stored in the AL. To get the
; Digit 1 in AL subtract the ASCII value '0' from the AL register.
; Here it store 0 as ASCII 30,
; 1 as 31, 2 as 32.......9 as 39
; To store 1 in memory subtract 30 to get 31 - 30 = 1
MOV BL, AL
SUB BL, '0'; '0' is digit 0 ASCII
; OR
SUB BL, 30H
; Now BL contain the single digit 0 to 9
; The only code missing here is to check whether the input is in the specific
; Range.
...
CODE ENDS.