View Full Version : حل کردن فرمول های ریاضی
امید خطیبی
پنج شنبه 17 آذر 1390, 22:51 عصر
با سلام خدمت دوستان
باز با دو سوال دیگه آمدم
سوال اول اینه که اگر خواسته باشیم این فرمول رو در برنامه به روشی که زیاد تعریفی نداشته باشیم و اعداد را از کاربر دریافت کنیم چه جوری باید نوشت:
اولین کاری که برنامه می کند این هست که A*B بعد منهای C تقسیم بر M و جمع کنه با F و جواب کل رو به ما نشون بده حالا اگر خواسته باشیم برنامه رو کوچیک کنیم که برای هر یکی از جواب این ها یک متغیر تعریف نکنیم و بعد جواب را با بعدی حساب کنیم چی؟
سوال دوم اینه که پنج تا عدد داریم می خواهیم بزرگترین عددی که داریم رو از بین این اعداد در بیاریم؟
البته دوستان من کد هر دو این سوالات رو دارم فقط یک کد ساده می خواهم که از کدی که نوشتم کمتر باشه و این همه مقدار تعریف نشه داخل برنامه.
xman_1365_x
پنج شنبه 17 آذر 1390, 23:11 عصر
خوب بستگی به سایز a,b,c,m,f داره اگر 8 بیت باشه همه عملیات رو میتونید با کمک ثبات ها انجام بدین
اگر غیر این باشه میشه با تعریف آدرس(متغیر) و یا با استفاده از پشته انجامش داد ،چون داده های شما بزرگ میشه و پردازنده نمیتونه با یک دستور روی همه داده هاتون تاثیر بزاره
موفق باشی
امید خطیبی
جمعه 18 آذر 1390, 07:52 صبح
دوست عزیز سوال دوم رو نمیشه ساده شده واسه من بنویسی آخه جواب اون سوال هم من داخل اینترنت پیدا کردم طولانی هست مقایسه 5 عدد با هم نیاز به یک چیزی مثل حلقه داره اما چه جوری اضافه میشه و تشخیص میده و قرار میده تو متغیر max رو نمی دونم.
این سوال آخر رو اگر میشه یک کد ساده بگذارین با توضیحات مرسی.
جواب سوال اول من رو هم کدش رو نوشتم ببینین درست هست.
jmp start
aa db 5H
bb db 2H
cc db 1H
dd db 3H
ab db 17H
sum db ?
start:
mov al,aa
mul bb,al
mov ah,bb
sub cc,ah
mov bl,cc
div dd,bl
mov bh,dd
add bh,ab
mov sum,bh
ret
می خواهم تو این انجمن با شما برنامه نویسی اسمبلی رو کامل بلد بشم اگر بشه.
xman_1365_x
یک شنبه 20 آذر 1390, 17:39 عصر
سوال دوم اینه که پنج تا عدد داریم می خواهیم بزرگترین عددی که داریم رو از بین این اعداد در بیاریم؟
پروژه دانشجویی هست شما باید بنویسین نه من ، اسونه نیاز دارین به یادگیری دستور loop و cmp با لوپ یک حلقه که n-1 عنصر رو پیمایش کنه و max هم در شروع یکی از اعداد ارایتونه بعد با خونه های بعدی مقایسه میکنه در حلقه اگر بزرگتر بود در ماکس قرار میده در پایان حلقه ماکس در آدرس مربوطه قرار داره
در ارتباط با برنامه که قرار دادین چون 8 بیتی هست میتونین همرو با ثبات انجام بدین فقط باید دستوراتی که نوشتین در کتاب نحوه استفادشو مطالعه کنید.
موفق باشی
امید خطیبی
یک شنبه 20 آذر 1390, 20:24 عصر
داداش درست که با یه حلقه میشه این کار رو انجام داد ولی چون به ما حلقه یاد نداده می خواهم بدونم روش دیگه ای جز حلقه هست مثلا با یک شرط چک کنیم اون رو نمی دونم که چگونه باید با دستورات شرطی و پرش ها یک حلقه بسازم.
مرسی از این که گفتین پروژه دانشجویی هست من همیشه تلاش می کنم که پروژه هام رو خودم بنویسم و اگر به نتیجه ای نرسیدم در آخر به این سایت مراجعه می کنم.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.