![]() |
طول دستورات و تعداد دستورات - نسخهی قابل چاپ |
طول دستورات و تعداد دستورات - مازیار صفایی - ۲۸ آبان ۱۳۹۰ ۰۱:۱۸ ق.ظ
از این تیپ سوالات هست که می گن اگه طول دستورات ۱۰ بیت باشه و فیلد های آدرس ۳ بیت. بعد m تا دستورات دو اپرندی داریم n تا یک اپرندی... حالا صفر اپرندی چندتاست ![]() من تو هیچ کتابی پیدا نکردم اینها رو درست توضیح بده . راست و حسینیش اینه که نمی فهمم! ![]() از کجا باید تشخصی بدیم؟ اگه منبع خوب هم سراغ دارید باز هم دعا گو هستیم... |
طول دستورات و تعداد دستورات - pos - 28 آبان ۱۳۹۰ ۰۱:۴۴ ق.ظ
نمونه این سوال توی آزمون ۲۵ درصد اول پارسه بود. من هم جایی ندیده بودم چطوری حل میشه. من به روش زیر حل کردمش: سوال این بود: اگر طول دستور ۱۰ بیت و طول آدرس ۳ بیت باشد و ۱۴ دستور دو عملوندی و ۱۵ دستور تک عملوندی داشته باشیم چند دستور بدون عملوند می توانیم داشته باشیم؟ خوب فضای کلی دستور به این صورت هست: ---|---|---- = xxxx|yyy|zzz پس چهار بیت برای opcode دو عملوندی داریم که میشه ۱۶ دستور ولی ما اینجا از ۱۴ تاش استفاده کردیم یعنی ۲ دستور خالی داریم. من فرض می کنم این دو دستور ۰۰۰۰ و ۰۰۰۱ هستند. حالا گفته ۱۵ تا دستور تک عملنودی داریم من از سه بیت بخش دوم (yyy) استفاده می کنم. چون یک اپرند می خوایم مشکلی پیش نمیاد. و چون ۳ بیت هست میشه باهاش ۸ دستور ایجاد کرد ولی توی مرحله قبل ما دو دستور ۰۰۰۰ و ۰۰۰۱ را خالی داریم. پس اینها را با هم ترکیب می کنیم تا بتوانیم ۱۶ دستور تک عملوندی ایجاد کنیم که میشه: ---|y|yyy--- خوب همانطور که دیدی ما می توانیم ۱۶ دستور ۲ تک عملوندی داشته باشیم که از ۱۵ تاش داریم استفاده می کنیم. من فرض می کنم دستور باقیمانده ---|۰۰۰|۰۰۰۰ باشه. خوب پس می توانم با ترکیب این دستور و ۳ بیت باقیمانده ۸ دستور بدون عملوند استفاده کنم. حالا با این نکته دقت کن: اگر گفته بود ۱۶ دستور تک عملوندی داریم دیگه نمی شد دستور بدون عملوند ایجاد کرد چون ---|۰۰۰|۰۰۰۰ جزئ دستورات تک عملوندی می شد و اگر من از سه بیت باقیمانده برای دستورات صفر عملوندی استفاده می کردم کامپیوتر نمی تونست تشخیص بده این دستور بدون عملوند هست یا اینکه یک دستور تک عملوندی است. امیدوارم تونسته باشم درست توضح بدم ![]() |
طول دستورات و تعداد دستورات - مازیار صفایی - ۲۸ آبان ۱۳۹۰ ۰۲:۱۷ ق.ظ
توضیحاتتون عالی بود بسیار متشکرم! من هر وقت می خوام از معماری یک نفس راحت بکشم یک چیزی هست که .....! باز هم متشکر |
طول دستورات و تعداد دستورات - Xilinx - 01 آذر ۱۳۹۰ ۱۱:۵۴ ب.ظ
دقت کنید توی تست های آخر فصل پوران ۳تا سوال این مدلی هست ;-) آپلود کنم ؟؟! |
طول دستورات و تعداد دستورات - مازیار صفایی - ۰۲ آذر ۱۳۹۰ ۱۲:۱۶ ق.ظ
دستتون درد نکنه! دارمشون.... |
RE: طول دستورات و تعداد دستورات - firouzi.s - 02 آذر ۱۳۹۰ ۰۴:۲۸ ب.ظ
منم این سوالو اشکال دارم دو زاریم هنوز نیفتاده فقط کج شده ![]() ![]() ممنون |
طول دستورات و تعداد دستورات - Xilinx - 02 آذر ۱۳۹۰ ۰۶:۲۶ ب.ظ
نقل قول: منم این سوالو اشکال دارم منم اینو خوندم دو زاریم کج شد ولی بعدش گرفتم چی شده ![]() ولی من همین توضیحات رو تکمیل میکنم (با اجازه) نقل قول: اگر طول دستور ۱۰ بیت و طول آدرس ۳ بیت باشد و ۱۴ دستور دو عملوندی و ۱۵ دستور تک عملوندی داشته باشیم چند دستور بدون عملوند می توانیم داشته باشیم؟ نکته ای که باید بگم اینه: ما این نکته رو میدونیم که با مثلا ۴تا بیت میشه ۲ به توان ۴ تا حالت (یعنی ۱۶ تا حالت) ایجاد کرد.حالا ما از اون قسمت xxxx می تونیم ۱۶ تا حالت (یا همون ۱۶ تا دستور) میتونیم داشته باشیم در حالی که قسمت yyy و zzz برای دو آدرس بکار بره (چون توی سوال گفته که طول آدرس ۳ بیت هست) پس میتونیم ۱۶ تا دستور دو آدرسه(یا دو عملوندی) داشته باشیم.ولی توی سوال گفته ما ۱۴ تاشو رزرو کردیم. پس ما این (با تفکر بقالی) دو حالت واسه خودمون داریم.(۱۶-۱۴=۲) خب حالا نکته ای که باید بگم اینه که ما دیگه از این ۴بیت اول xxxx هیچ استفاده ای نمیتونیم بکنیم(در واقع فقط از همون دو حالت میتونیم استفاده کنیم) پس به این فکر کنید که ۴ بیت از ۱۰ بیت رفته و ۶ بیت مونده.حالا این ۶ بیت خب ۳ بیتش واسه آدرس همون ۱ عملوندمون استفاده میشه.با این ۳ بیت yyy ما میتونیم ۲ به توان ۳تا دستور داشته باشیم(یعنی ۸تا) حالا دوتا حالت هم از xxxxها مونده بود(یادتونه ؟! ![]() ![]() ![]() ![]() با تشکر !!! |
RE: طول دستورات و تعداد دستورات - firouzi.s - 03 آذر ۱۳۹۰ ۰۸:۵۳ ق.ظ
مرسی الان دیگه افتاد ![]() |