字符及字符串输入输出
从键盘输入两个一位十进制数,计算这两个数之和,并将结果在屏幕上显示出来。
分支程序设计
从键盘输入一字符,判断该字符是小写字母、大写字母、数字或者其他字符。若输入为小写字母,显示“You Input a Lowercase Letter!”;若输入为大写字母,显示“You Input a Uppercase Letter!”;若输入为数字,显示“You Input a Digit!”;若输入为其它字符,显示“You Input Other Letter!”。
DATA SEGMENT
INFOR1 DB "PLEASE INPUT THE FIRST DATA(<10):$"
INFOR2 DB 0AH, 0DH, "PLEASE INPUT THE SECOND DATA(<10):$"
INFOR3 DB 0AH, 0DH, "THE RESULT IS:$"
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX, DATA
MOV DS, AX
MOV DX, OFFSET INFOR1 ;获取第一个数
MOV AH, 09H
INT 21H
MOV AH, 01H
INT 21H
SUB AL, 30H
MOV BL, AL
MOV DX, OFFSET INFOR2 ;获取第二个数
MOV AH, 09H
INT 21H
MOV AH, 01H
INT 21H
SUB AL, 30H
XOR AH, AH ;计算结果
ADD AL, BL
AAA
PUSH AX;显示结果
MOV DX, OFFSET INFOR3
MOV AH, 09H
INT 21H
POP AX ;
PUSH AX
MOV DL, AH
OR DL, 30H
MOV AH, 02H
INT 21H
POP AX
MOV DL, AL
ADD DL, 30H
MOV AH, 02H
INT 21H
MOV AH, 4CH ;返回 DOS
INT 21H
CODE ENDS
END START
分支程序设计
DATA SEGMENT
INFOR1 DB 0AH, 0DH, "Please Press Any Key to input a letter :$"
INFOR2 DB 0AH, 0DH, "You Input a Lowercase Letter! $"
INFOR3 DB 0AH, 0DH, "You Input a Uppercase Letter! $"
INFOR4 DB 0AH, 0DH, "You Input a Digit! $"
INFOR5 DB 0AH, 0DH, "You Input Other Letter! $"
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX, DATA
MOV DS, AX
MOV DX, OFFSET INFOR1 ;显示信息
MOV AH, 09H
INT 21H
MOV AH, 01H ;功能号为1的DOS功能调用实现从键盘输入一个字符
INT 21H
CMP AL,'0'
JB OTHER
CMP AL,'9'
JB DIGIT
CMP AL,'A'
JB OTHER
CMP AL,'Z'
JBE UPPER
CMP AL,'a'
JB OTHER
CMP AL,'z'
JBE LOWER
JMP PEND
LOWER: MOV DX, OFFSET INFOR2
MOV AH, 09H
INT 21H
JMP PEND
UPPER: MOV DX, OFFSET INFOR3
MOV AH, 09H
INT 21H
JMP PEND
DIGIT: MOV DX, OFFSET INFOR4
MOV AH, 09H
INT 21H
JMP PEND
OTHER: MOV DX, OFFSET INFOR5
MOV AH, 09H
INT 21H
JMP PEND
PEND: MOV AH,4CH
INT 21H
CODE ENDS
END START