INC RES
L1: LOOP LOP1
ENDM
2.请设计一个完整程序,该程序的功能如下:
(1)从键盘接收一个字符串输入,把接收到的字符串存放于一个缓冲区中,最大允许输入10个字符,输入字符数不够10个时可以回车键结束字符串的输入。
(2)将该字符串中的字符‘H’全部替换为字符‘T’
(3)在新的一行上显示更改后的字符串
要求写出完整的源程序代码。(12分)
DATA SEGMENT ;数据段及变量定义,2分
MAXLEN DB 20
ACTLEN DB ?
STR1 DB 21 DUP(?)
DATA ENDS
CODE SEGMENT ;代码段定义,1分
ASSUME CS:CODE,DS:DATA ;ASSUME,1分
BEGIN:MOV AX,DATA ;DS初始化,1分
MOV DS,AX
MOV DX,OFFSET MAXLEN ;字符串输入,1分
MOV AH,0AH
INT 21H
MOV DL,0DH ;回车换行显示,1分
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
LEA BX,STR1 ;添加字符串结束标志,1分
PUSH BX
MOV CL,STR1+1
XOR CH,CH
ADD BX,CX
MOV [BX],‘$’
POP BX
LOP1: CMP [BX],‘H’ ;循环主体,2分
JNZ L1
MOV [BX],‘T’
L1: INC BX
LOOP LOP1
LEA BX,STR1 ;字符串显示,1分
MOV AH,09H
INT 21H
MOV AH,4CH ;程序框架,1分
INT 21H
CODE ENDS END BEGIN