#Elahe#
سه شنبه 16 آبان 1391, 06:29 صبح
سلام
من میخوام محتوای دو تا استرینگ رو باهمدیگه عوض کنم
به طوری که هر دو محتوا قابل چاپ تو خروجی باشه
یعنی اینطور نباشه که یکیش رو کپی کنیم تو اون یکی و در نتیجه محتوای یکیش از بین بره !
من برای عکس کردن یه استرینگ کدش رو نوشتم
میخواستم با تغییر تو همین کد برنامه مورد نظرم (کپی محتوای دو استرینگ در همدیگه) رو هم بنویسم
ولی از آنجائی که هم مبتدی هستم و هم در کار با ثباتهای اشاره گر گیج شدم نمیتونم با این الگوریتم برنامه رو بنویسم :لبخند:
page 100,100
title revers string
.data
string db 'assembly','$'
stringlength dw 08
stringrevers db 08 dup(?)
.code
main proc far
mov ax, @data
mov ds, ax
mov es, ax
mov cx, stringlength
lea si, string
lea di, stringrevers
add si, stringlength
unknown!:
add si, -1
L1:
mov al, [si]
mov [di], al
dec si
inc di
loop L1
mov al, [si]
mov [di], al
inc di
mov dl, '$'
mov [di], dl
mov ah, 09h
lea dx, stringrevers
int 21h
mov ax, 4c00h
int 21h
main endp
end main
اگر الگوریتم دیگه ای هم واسه این برنامه هست بفرمائید
مثل استفاده از xchg
من میخوام محتوای دو تا استرینگ رو باهمدیگه عوض کنم
به طوری که هر دو محتوا قابل چاپ تو خروجی باشه
یعنی اینطور نباشه که یکیش رو کپی کنیم تو اون یکی و در نتیجه محتوای یکیش از بین بره !
من برای عکس کردن یه استرینگ کدش رو نوشتم
میخواستم با تغییر تو همین کد برنامه مورد نظرم (کپی محتوای دو استرینگ در همدیگه) رو هم بنویسم
ولی از آنجائی که هم مبتدی هستم و هم در کار با ثباتهای اشاره گر گیج شدم نمیتونم با این الگوریتم برنامه رو بنویسم :لبخند:
page 100,100
title revers string
.data
string db 'assembly','$'
stringlength dw 08
stringrevers db 08 dup(?)
.code
main proc far
mov ax, @data
mov ds, ax
mov es, ax
mov cx, stringlength
lea si, string
lea di, stringrevers
add si, stringlength
unknown!:
add si, -1
L1:
mov al, [si]
mov [di], al
dec si
inc di
loop L1
mov al, [si]
mov [di], al
inc di
mov dl, '$'
mov [di], dl
mov ah, 09h
lea dx, stringrevers
int 21h
mov ax, 4c00h
int 21h
main endp
end main
اگر الگوریتم دیگه ای هم واسه این برنامه هست بفرمائید
مثل استفاده از xchg