;IN:
; BX<-str
;OUT:
; NONE
PrefixSpace proc
PUSH AX
PUSH CX
PUSH SI
PUSH DI
PUSH ES
MOV AX,DS
MOV ES,AX
MOV DI,BX
MOV CX,0FFFFH
MOV AX,'$'
CLD
REPNE SCASB
;定位置串结束,确定串长度
JNC ERR
;没有结束符'$'
MOV SI,DI
DEC SI
MOV CX,DI
SUB CX,BX
STD
REP MOVSB
;顺序向后移动一个位置
MOV [SI],' '
;前面存入空格字符
JMP EXIT
ERR:
;错误处理代码
EXIT:
POP ES
POP DI
POP SI
POP CX
POP AX
RET
PrefixSpace endp
mov bl,0
mov cx,10
mov al,20h
start:xchg al,bl
inc bl
loop start
编程还是自己动手比较好,给你个思路吧,把数据段的首地址赋给指针变量,然后通过地址加一操作对每个字符进行处理