DATAS SEGMENT
STRING1 DB 'Input Your String: $';输入提示信息
STRING2 DB 'Digit: $' ;各类字符提示信息
STRING3 DB 'Alph: $'
STRING4 DB 'Others: $'
DIGIT DB 0 ;数字
ALPH DB 0 ;字母
OTHERS DB 0 ;其他
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
LEA DX,STRING1 ;显示输入提示信息
MOV AH,9
INT 21H
MOV CX,100 ;设置循环次数主够大
L1:MOV AH,1 ;中断调用,单字符输入
INT 21H
CMP AL,0DH ;若输入回车符则结束
JZ OVER2
CMP AL,30H
JB OTHER ;若<30H(0),OTHERS++
CMP AL,39H ;若>39H(9),跳转进一步比较
JA HIGHER1
JMP DIGITAL ;DIGIT++
HIGHER1:CMP AL,41H ;if<41H(A),OTHERS++
JB OTHER
CMP AL,5AH ;if>5AH(Z),跳转继续比较