View Full Version : جزر در اسمبلی
kiuhnmgtrdcv
دوشنبه 22 تیر 1388, 21:08 عصر
چند وقت پیش با یکی از دوستان اقای tdkhakpour در مورد جزر گرفتن در اسمبلی سوال کردم نتیجه تاپیک این کد شد ولی اون موقع من از کد تست نگرفتم الان امتحان کردم دیدم اشتباهه لطفا این کد تصحیح کنید
mov dw,64
mov bx,num
l1:
shr bx,1
mov dx,0
mov ax,bx
mul ax
cmp bx,0
je exit
cmp ax,num
ja l1
tdkhakpur
دوشنبه 22 تیر 1388, 21:51 عصر
سلام
mov dw,64
mov bx,num
l1:
shr bx,1
mov dx,0
mov ax,bx
mul ax
cmp bx,0
je exit
cmp ax,num
ja l1
من کی یه همچین کدی را برای شما ارسال کردم من الگوریتم کار را برای شما شاید توضیح داده باشم به هر حال کد بالا اصلا مفهوم ندارد.
ولی اصول و الگوریتم این کار بشه شکل زیر هست.
شما عدد مورد نظر را در یک متفییر جدا قرار بدید و این عدد را بر دو تقسیم کرده و نتیجه را در خودش ضرب کنید حال حاصل این ضرب را با عدد مورد نظرتان مقایسه کنید اگر برابر باشد خاتمه ولی اگر نباشد باز مراحل فوق را با عدد نصف شده ادامه دهید.
kiuhnmgtrdcv
دوشنبه 22 تیر 1388, 22:39 عصر
ببخشید بدلیل بی دقتی خط اول کد اشتباه نوشتم کد اصلاح شده اینطوری شد که درست کار میکنه
data segment
; add your data here!
pkey db "press any key...$"
num dw 64
ends
stack segment
dw 128 dup(0)
ends
code segment
start:
mov num,64
mov bx,num
l1:
shr bx,1
mov dx,0
mov ax,bx
mul ax
cmp ax,num
je exit
ja l1
exit:
mov ax, 4c00h ; exit to operating system.
int 21h
ends
end start
linelove666
چهارشنبه 02 تیر 1389, 15:19 عصر
سلام
تا اونجایی که فهمیدم این برنامه میتونه جزر اعداد خاصی رو بده
تو این تاپیک ( http://www.barnamenevis.org/forum/showthread.php?t=229545 ) یه شبه الگوریتمی هست که میتونه جزر هر عددی رو بدون اعشار حساب کنه. اگه کسی بتونه اونو تو اسمبلی پیاده کنه ممنون میشم....
tdkhakpur
چهارشنبه 02 تیر 1389, 21:23 عصر
جذر يك عدد (http://barnamenevis.org/forum/showthread.php?t=229545)
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.