填空题
下面的程序用来删除字符串’AABA’中第1个出现的由DAT单元指定的字符,删除字符后,后面字符前移,并在字符串尾部添加字符,’$’(24H)。请在横线处填充,使程序能达到预定的功能。
DSEG SEGMENT
BUF DB ’AABA’
CNT DW $-BUF
DAT DB 41H
DSEG ENDS
SSEG SEGMENT STACK
DB 256DUP (0)
SSEG ENDS
CSEG SEGMENT
ASSUME DS:DSEG. SS:SSEG,CS:CSEG. ES:DSEG
START PROC FAR
PUSH DS
XOR AX,AX
PUSH AX
MOV AX, DSEG
MOV DS,AX
MOV ES,AX
CLD
LEA DI,BUF
MOV CX,CNT
MOV AL,DAT
REPNE SCASB
JE DEL
JMP EXIT
DEL: JCXZ FILL
NEXT: MOV BL.[DI]
MOV [DI-1],BL
INC DI
LOOP NEXT
FILL: MOV ______, 24H
EXIT: RET
START ENDP
CSEG ENDS
END START
【参考答案】
BYTE PTR [DI-1]或者byte ptr[di-1]