PDA

View Full Version : برنامه جمع و ضرب و تفریق



ali682344
سه شنبه 04 خرداد 1389, 19:08 عصر
با عرض سلام و خسته نباشید خدمت دوستان
ببخشید من تا حالا اسمبلی کار نکردم و حالا یه برنامه به ما دادن که بنویسیم
برنامه ای که 4 بایت از حافظه خانه های 100 تا 104 را با چهار بایت دیگه از حافظه 104 تا 107 جمع و ضرب و تفریق رو انجام بده و در خانه های 108 به بعد بریزه ؟

اگه قوانین سایت هم اجازه نوشتن برنامه رو نمیده یه توضیح هم در این رابطه واقعا می تونه به من کمک کنه .:خجالت:


پیشاپیش از کمکتون ممنونم.

ali682344
چهارشنبه 05 خرداد 1389, 09:32 صبح
:ناراحت: :افسرده:

ali682344
چهارشنبه 05 خرداد 1389, 15:08 عصر
سلام
با کمک یکی از دوستان تونستم چنین چیزی رو برای جمع و تفریق بنویسم خواهش می کنم اگه اشتباهی داره راهنمایی کنید در مورد ضرب هم اصلا نمیدنم چیکار کنم:عصبانی++:

جمع
data
org 100
a DB 12h,15h,16h,17h
b DB 12h,15h,16h,17h
c DB dup(?)

code
mov al,[100]
add al,[104]
mov [108],al

mov al,[101]
adc al,[105]
mov [109],al

mov al,[102]
adc al,[106]
mov [110],al

mov al,[103]
adc al,[107]
mov [111],al

mov al,0
adc al,0
mov [112],al

تفریق
data
org 100
a DB 12h,15h,16h,17h
b DB 12h,15h,16h,17h
c DB dup(?)

code
mov al,[100]
sub al,[104]
mov [108],al

mov al,[101]
sbb al,[105]
mov [109],al

mov al,[102]
sbb al,[106]
mov [110],al

mov al,[103]
sbb al,[107]
mov [111],al

mov al,0
sbb al,0
mov [112],al

saber187518
پنج شنبه 06 خرداد 1389, 02:49 صبح
با سلام من کدت رو نگاه کردم . به ظاهر ایرادی نداشت.
راستی میخوای کامپایل کنی با کد نویسی فرق داره. منظورم اینه که کدنویسی تئوریک با کدنویسی عمل فرق داره. خصوصا در اسمبلی.
شما اول باید یک فایل text باز کنی و بعد کد رو بنویسی و بعد کد را با پسوند asm ذخیره کنید و از این فایل یک فایل obj بسازید و در نهایت از فایل obj یک فایل اجرایی ساخته و آن را اجرا کنید.
موفق باشید.

ali682344
پنج شنبه 06 خرداد 1389, 09:12 صبح
با سلام من کدت رو نگاه کردم . به ظاهر ایرادی نداشت.
راستی میخوای کامپایل کنی با کد نویسی فرق داره. منظورم اینه که کدنویسی تئوریک با کدنویسی عمل فرق داره. خصوصا در اسمبلی.
شما اول باید یک فایل text باز کنی و بعد کد رو بنویسی و بعد کد را با پسوند asm ذخیره کنید و از این فایل یک فایل obj بسازید و در نهایت از فایل obj یک فایل اجرایی ساخته و آن را اجرا کنید.
موفق باشید.

ببخشید قسمت ضرب رو میشه راهنمایی کنید

saber187518
جمعه 07 خرداد 1389, 01:48 صبح
با سلام
دوست عزیز شما باید یک شمارنده در نظر بگیری مثلا DL رو شمارنده در نظر بگیر (همینطوری مثال زدم) چون میدونیم که ضرب در واقع جمع های متوالی هست. شما باید یک عمل جمع رو چندین بار انجام بدی. مثلا اگه بخوای a*b رو حساب کنی باید a رو b بار با خودش جمع کنی.
البته دستور mul در اسمبلی وجود داره.
این رو گفتم که پیاده سازی رو هم بلد باشی.
موفق باشی.