填空题
下面的程序用来删除字符串’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:SSEC,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
1NC DI
LOOP NEXT
FILL: MOV 【11】 , 24H
EXIT: RET
START ENDP
CSEG ENDS
END START
【参考答案】
BYTE PTR [DI-1) (或者byte ptr(di-1](如填[DI-1],得1分))