字符串的输入与输出问题,如何改?
我的汇编源程序为:DATA SEGMENT
AA DB 0DH,'Please input a string:$'
BB DB 0DH,0AH,'Print the string:$'
CC DB 16 ;注意这是自己假设的输入容量
DB ? ;实际输入的个数
DB 16 DUP(0) ;真实的输入存储处
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
BEGIN:MOV AX,DATA
MOV DS,AX
LEA DX,AA
MOV AH,9
INT 21H
LEA DX,CC
MOV AH,10 ;调用21号中断10号子程序
INT 21H
lea dx,bb
mov ah,9
int 21h
LEA SI,CC
PUSH SI
MOV AL,[SI+2]
ADD AL,10H
MOV [SI+2],AL
INC SI
CMP AL,34H
SUB AL,10H
MOV [SI+2],AL
POP SI
ADD SI,2
MOV DX,SI
;lea dx,cc[2] ;回显的地址需要传送正确,前两字节并非存储处
mov ah,9
int 21h
mov ax,4c00h ;返回操作系统
int 21h
CODE ENDS
END BEGIN
这个程序的要求是输入一个字符串,以$结尾。
比如输入字符串:1234$
然后把字符串中的每个字符加上10H
所以输出字符串为:ABCD4
可是呢,我们老师还有一个要求。
就是在输入字符串的时候,要有一个判断,就是如果输入字符q,然后在输入回车时,就退出,返回到DOS。
可是这个操作我没有做出来,哪位大侠能不能给我加一下呀?拜托了呢~~~~~