一小段代码,不知道错在什么地方
datarea segment
data dw 03h,10h,67h,23h
datarea ends
prognam segment
main proc far
assume ds:data,cs:prognam
start:
push ds
mov ax,0
push ax
mov ax,datarea
mov ds,ax
cld
push di
mov cx,ds:[di]
add di,2
mov ax,10h
repne scasw
je delete
pop di
jmp short exit
delete:
jcxz dec_cnt
next_el:
mov bx,ds:[di]
mov ds:[di-2],bx
add di,2
loop next_el
dec_cnt:
pop di
dec word ptr ds:[di]
exit: ret
main endp
prognam ends
end start
程序目的是删除data字串中与ax中相同的元素,但总删不掉。请各位帮忙看一看,
谢谢