DATA SEGMENT
S1 DB '?*?=??$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE DS:DATA
MOV AX,DATA
MOV DS,AX
START:
MOV AH 1 输入第一个字符
INT 21H
MOV SI,OFFSET S1 放到第一个问号那儿
MOV [SI],AL
SUB AL 30H 得到字符的真值实际大细
MOV BL,AL
MOV AH,09H 显示第一个
MOV DL,BL
INT 21H
MOV AH 2 同上
INT 21H
MOV SI,OFFSET S1
MOV [SI+2],AL
SUB AL 30H
MOV AL,BL
MOV AH,09H
MOV DL,AL
INT 21H
MUL AL,BL
MOV DL,AL
CMP AL 10
JUP L1
L0 :
MUL DL,10 与10比较,如果超出了10就要减10,只取积的最后
一位数放在[ SI+5]最后那个问号那里,SI+4放0
MOV DL,30H
MOV DH,31H < 问题:如何处理超出10的那一部分,请帮帮忙>
MOV [SI+4],DH
MOV [SI+5] ,DL
如果没有>10就直接放在DL输出
MOV DL,0AH
INT 21H
MOV AH,9