elahe software
پنج شنبه 08 دی 1390, 17:57 عصر
من برنامه ای که دنبال یه کلمه باشه (هر تعداد تکرار و باید مکان هر کلمه رو بریزم تو یه متغیر) تو جمله نوشتم. ولی درست کار نمی کنه ؛ میشه راهنماییم کنید. مشکلش هم فکر می کنم اینه که تعداد مقایسه رو اشتباه به دست میاره.
;************************************************* ****** data
datasg segment
string db 'happy new day$'
key db 'new'
pa db '$'
place dw 3 dup(0)
count dw 0
datasg ends
;************************************************* ****** code
codesg segment
assume ds:datasg,es:datasg,cs:codesg
main proc
cld
LEA SI,string
lea di,pa
mov al,[si]
mov ah,09
int 21h
next:
inc cx
cmpsb
jne next
LEA SI,string
lea di,key
mov bx,0
compare:
repne cmpsb
cmp cx,0
je exit
mov place+bx,cx
inc bx
jmp compare
exit:
mov ax,4c00h
int 21h
codesg ends
main endp
;************************************************* ******
;************************************************* ****** data
datasg segment
string db 'happy new day$'
key db 'new'
pa db '$'
place dw 3 dup(0)
count dw 0
datasg ends
;************************************************* ****** code
codesg segment
assume ds:datasg,es:datasg,cs:codesg
main proc
cld
LEA SI,string
lea di,pa
mov al,[si]
mov ah,09
int 21h
next:
inc cx
cmpsb
jne next
LEA SI,string
lea di,key
mov bx,0
compare:
repne cmpsb
cmp cx,0
je exit
mov place+bx,cx
inc bx
jmp compare
exit:
mov ax,4c00h
int 21h
codesg ends
main endp
;************************************************* ******