用的是可视化的IDE :masm
DSEG SEGMENT
A DB ' PLEASE INPUT (a~z):','$' ;用于输入提示
B DB 0AH,0DH,'$' ;换行处理
D DB 'Input error','$' ;输入错误提示
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG ;加载上面的内容进入程序
START:
MOV AX,DSEG
MOV DS,AX
MOV AH,09H
MOV DX,OFFSET A ;求得输入提示信息的变量地址 并用dx寄存器指定(09号功能显示的是dx指定数据的内容)
INT 21H ;系统中断
MOV AH,01H ;调用系统1号功能 实现输入单字符 可查阅教材的附录内容
INT 21H
CMP AL,'a' ;小于a提示错误信息 如果小于a则跳转
JB error
CMP AL,'z'
JA error ;大于z提示错误信息 如果大于z则跳转
MOV BL,AL ;将数据存放到BL寄存器中
SUB BL,20H ;///转换 用ASCII码将小写转换为大写
;换行
;MOV DX,OFFSET B
;MOV AH,09H
;INT 21H
MOV DL,BL ;//输出
MOV AH,02H
INT 21H
JMP START
error:
MOV AH,09H
MOV DX, OFFSET D
INT 21H
exit:
MOV AH,4CH
INT 21H ;/结束
CSEG ENDS
END START