编程
哪个大佬帮我改一下程序吧。不用堆栈的方式,把SS换成DS
从键盘上输入一个字符串,以‘$’字符为结束标志,字符串长度【小于255】√.编程统计字符串中数字【0~9】√的个数,
【并将结果存入LENTH单元】√。在屏幕上以【十进制】形式显示数字符号的个数。要求统计数字符号用【子程序】完成。
STACK SEGMENT STACK
DW 0FFH DUP(?)
TOP LABEL WORD
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:STACK
MOV AX,STACK
MOV SS,AX
LEA SP,TOP
XOR BX,BX
L1: MOV AH,1
INT 21H
CMP AL,24H ;判断是否为‘$’,是则结束
JZ LENTH
CMP AL,30H ;判断是否大于0,否则判断下一字符
JB L1
CMP AL,39H ;判断是否小于9,否则判断下一字符
JZ L1
CMP AL,30H ;判断是否大于0,是则跳转使得BX自加1
JA GESHU
CMP AL,39H ;判断是否小于9,是则跳转使得BX自加1
JB GESHU
JMP L1
GESHU: INC BX
JMP L1
LENTH: MOV AH,4CH
INT 21H
CODE ENDS
END L1