ورود

View Full Version : بدست اوردن طول یه رشته



kiuhnmgtrdcv
سه شنبه 19 خرداد 1388, 02:38 صبح
چطور میتونیم طول یه رشته در اسمبلی بدست بیاریم ؟
من فکر میکنم اول باید ادرس اول رشته بدست بیاریم بعد یکی یکی چک کنیم تا ببینیم که ایا به کاراکتر پوچ رسیدیم یا نه و یه شمارنده این مراحلو بشمره
ایا این کدی که نوشتم درسته؟




; si ادرس شروع رشته در
strlen proc far
push si
l1:
cmp [si],"" ; این خط درسته؟
je zero:
inc cx ; cxاندازه طول رشته در
jmp l1
zero:
mov cx,0
exit:
pop si
strlen endp

mehdi5106
سه شنبه 19 خرداد 1388, 06:04 صبح
.model small
.stack 100
.data
count db 0
str db "www.barnamenevis.org$"
.code
main proc far
mov ax,@data
mov ds,ax

mov bx,offset str
mov ah,2
l1: mov dl,[bx]
cmp dl,'$'
je endwhile
int 21h
inc bx
inc count
jmp l1

endwhile:
mov ax,4c00h
int 21h
main endp
end main