تالار گفتمان مانشت
قالب دستورالعمل ها. IT87 - نسخه‌ی قابل چاپ

قالب دستورالعمل ها. IT87 - ghazal dl - 19 دى ۱۳۹۳ ۱۱:۴۰ ق.ظ

سلام دوستان
خواهش میکنم تو حل این مدل سوال ها راهنماییم کنید.
خیلیم گشتم ولی تا اونجا که من دیدم کسی مسئله رو از ۰ش باز نکرده بود، من نمیدونم قالب دستوالعمل تک آدرسه و دو آدرسه و سه آدرسه و ... چطوریه
چند بیت به عملوند ها و چند بیت به آپکود اختصاص داده میشه؟ همیشه ثابته متغیره ...
کلا اصلا نمیفهممSad!
خیلی ممنون میشم اگه کسی واسم توضیح بده

RE: قالب دستورالعمل ها. IT87 - mmamadi49 - 19 دى ۱۳۹۳ ۰۲:۲۶ ب.ظ

ببخشید توضیح دادنم خوب نیست !!!Shy
[تصویر:  325878_43.png]

RE: قالب دستورالعمل ها. IT87 - ghazal dl - 19 دى ۱۳۹۳ ۰۲:۵۷ ب.ظ

ببخشید توضیح دادنم خوب نیست !!!Shy

#######

خیلییییی خیلییییی عالی توضیح دادید، خیلی خوب بود، جواب همه علامت سوالامو گرفتم، ممنون وقت گذاشتید و جواب دادید Smile

RE: قالب دستورالعمل ها. IT87 - mmamadi49 - 19 دى ۱۳۹۳ ۰۳:۱۴ ب.ظ

(۱۹ دى ۱۳۹۳ ۰۲:۵۷ ب.ظ)ghazal dl نوشته شده توسط:  ببخشید توضیح دادنم خوب نیست !!!Shy

#######

خیلییییی خیلییییی عالی توضیح دادید، خیلی خوب بود، جواب همه علامت سوالامو گرفتم، ممنون وقت گذاشتید و جواب دادید Smile

خواهش میکنم . موفق باشید.

RE: قالب دستورالعمل ها. IT87 - mostafa2012 - 26 دى ۱۳۹۳ ۰۹:۲۳ ق.ظ

(۱۹ دى ۱۳۹۳ ۰۲:۲۶ ب.ظ)mmamadi49 نوشته شده توسط:  ببخشید توضیح دادنم خوب نیست !!!Shy
[تصویر:  325878_43.png]

سلام
چرا در جواب سوال نوشته شده که :
"برای دستورات سه آدرسه دو مجموعه ۸ بیتی برای نشان دادن آدرس این دستورات استفاده می شود"

طرف اول سوال  (بعد اول)
آیا بخاطر صورت سوال گفته آدرس حافظه ما ۸بیتی است ....
یا اون فقط برای آدرس دهی خانه های حافظه است و کاری به کار دیگران نداره؟؟؟/....


طرف دوم سوال  (بعد دوم)
حالا چرا اصلا دستورات سه آدرسه باید دوتا ۸بینی و در ادامه هم گفته دستورات دو آدرسه باید یک مجموعه ۸بیتی استفاده کرد
راستی چرا m را در ۲به توان ۸ ضرب کردید ؟؟؟؟؟
Mتعداد دستورات سه آدرسه و n تعداد دستورات دو آدرسه است ....
خب پس ۲ به توان چیه دیگه

RE: قالب دستورالعمل ها. IT87 - mostafa2012 - 04 بهمن ۱۳۹۳ ۰۶:۰۰ ب.ظ

(۱۹ دى ۱۳۹۳ ۰۲:۲۶ ب.ظ)mmamadi49 نوشته شده توسط:  ببخشید توضیح دادنم خوب نیست !!!Shy
[تصویر:  325878_43.png]
سلام
لطفا یکی بیاد من را قانع کنه......
لطفا ببینید کجاش من بد توضیح میدهم

شما گفتید سه نوع دستور داریم...
وقتی از دستور سه آدرسه استفاده میشه=> در قالب ۳۲ بیتی دستور العملمان =>سه تا ۸ تا یعنی ۲۴ بیت برای آدرس رفته کنار و از ۳۲بیت دستور العمل میمونه ۸بیت...=> گفتید که تعداد دستورالعمل هایی که برای دستورات سه آدرسه میشه انجام داد(Opcode) ، ماکزیمم میشه [tex]2^8[/tex]
خب چون مسئله گفته m تا دستور سه آدرسه داریم ....=> کل دستورات سه آدرسه ما میشه[tex]2^8-m[/tex]
=====
برای دو آدرسه هم مثل بالا عمل کنیم...
قالب ۳۲بیتی=> دو تا ۸ تا یعنی ۱۶ تا بیت برای آدرس دهی دستورات سه آدرسه کنار رفته و میمونه تعداد دستورالعمل هایی(Opcode) که در این نوع آدرس دهی هست... خب چون ۱۶ تا دیگه میمونه => طبق بالا میشه ماکزیمم [tex]2^16[/tex] دستور...
ولی چون مسئله گفته n تا دستور دو آدرسه داریم ..=> کل دستورات دو آدرسه ما میشه [tex]2^16-n[/tex]
=====
حالا باید چیکار کنیم.....بله برای محاسبه تک آدرسی ها....مثل بالا عمل میکنیم...
برای تک آدرسی ها => چون یک تا ۸ تا نیازه => 8 بیت از ۳۲بیت دستور العمل برای حافظه دستورات تک آدرسی مون رفت....
میمونه ۲۴ بیت => ماکزیمم چند حالت هست؟؟؟ [tex]2^24[/tex]
خب از اینجا بیزحمت شما وارد عمل بشید
حالا باید کل ماکزیمم حالت های تک آدرسی ها رو منهای مجموع اون دو تا بکنیم درسته؟؟؟


باتشکر

RE: قالب دستورالعمل ها. IT87 - gogooli - 04 بهمن ۱۳۹۳ ۰۸:۲۹ ب.ظ

دستورات سه آدرسه [tex]2^8-m[/tex] نمی شه ... این تعدادی است که از ۸ بیت با ارزش برای دو آدرسه می مونه که دو آدرسه ۸ بیت دیگه هم برای opcode داره می شه [tex](2^8-m^{ })2^8[/tex]...این ماکزیمم تعداد دستورات دو آدرسه است اگر این تعداد باشه چیزی برای یک آدرسه نمی مونه در صورت سوال گفته n تاش مصرف شده پس این تعداد منها n برای یک آدرسه می مونه یک آدرسه ۸بیت دیگه هم برای opcode داره این ضربدر [tex]2^8[/tex] می شه.

RE: قالب دستورالعمل ها. IT87 - mostafa2012 - 04 بهمن ۱۳۹۳ ۱۰:۴۳ ب.ظ

(۰۴ بهمن ۱۳۹۳ ۰۸:۲۹ ب.ظ)gogooli نوشته شده توسط:  دستورات سه آدرسه [tex]2^8-m[/tex] نمی شه ... این تعدادی است که از ۸ بیت با ارزش برای دو آدرسه می مونه که دو آدرسه ۸ بیت دیگه هم برای opcode داره می شه [tex](2^8-m^{ })2^8[/tex]...این ماکزیمم تعداد دستورات دو آدرسه است اگر این تعداد باشه چیزی برای یک آدرسه نمی مونه در صورت سوال گفته n تاش مصرف شده پس این تعداد منها n برای یک آدرسه می مونه یک آدرسه ۸بیت دیگه هم برای opcode داره این ضربدر [tex]2^8[/tex] می شه.

ببخشید پس دستورات چی مشن؟؟؟
مافقط باید آدرس دهی مد نظر باشه؟؟؟؟

پس ببخشید ocpde کجا قرار میگیره ... الان قبول دارید که ما در هر مرحله :
بار اول برای سه آدرسی گفتیم میشه [tex]2^8-m[/tex] تا جا هس (این یعنی دقیقا چی؟؟؟ مگر نمیشه مقداری که از طول دستور۳۲ بیتی مونده؟؟؟)
بار دوم گفتیم دوآدرسی هم چون داریم => یه دو بتوان ۸ اضاف داره که میشه[tex](2^8-m)2^8-n[/tex] (اینم بیزحمت بگید چیه؟؟)
بار سوم گفتیم تک آدرسه هم دو بتوان ۸ تا زیادتر از همشون جا داره =>
[tex]((2^8-m)2^8-n)2^8[/tex]

باتشکر