به سامانه پرسش و پاسخ علمی دنوج خوش آمدید. با ثبت نام در سامانه و طرح پرسش جدید یا پاسخ به سوالات بی پاسخ کار را شروع کنید
سوالات علمی خود را می توانید در نسخه جدید دنوج مطرح نمایید. http://dnoj.ir/questions/
سامانه پرسش و پاسخ علمی دنوج پاسخ پرسش های علمی شما را می داند. شما در این سامانه سوالات علمی خود را در موضوعات مختلف علمی می پرسید, سپس کاربرانی که جواب سوال شما را می دانند در کوتاهترین زمان ممکن به سوال شما جواب می دهند. اینگونه هم شما که سوالی در ذهنتان شکل گرفته است به پاسخ سوال خود می رسید و هم دوستانتان که پاسخ سوالات شما را می دانند دانش خود را محک می زنند و با دیگر کاربران به اشتراک می گذارند.
سوالات,انتقدات و پیشنهادات خود درباره سامانه پرسش و پاسخ علمی دنوج را در این دسته مطرح کنید.

یک کامپیوتر جدا از مراحل سه گانه چگونه عمل می کند؟

+1 رای

منظورم از این سوال طرز عملکرد سی پی یو و بقیه ی اجزای کامپیوتر می باشد.

پرسیده شد 14 Jun 2016 در تکنولوژی توسط سامان اسلامی (80 امتیاز)

1 پاسخ

0 رای

در پروسه پردازش دستورات در CPU چهار مرحله اصلی وجود دارد: ۱- فراخوانی ۲- رمزگشایی ۳- پردازش و اجرا ۴- بازنویسی. این چهار مرحله اصلی به ترتیب اجرا شده و فرآیند پردازش دستور به اتمام می‌رسد.

مرحله اول: فراخوانی

در مرحله اول، پردازنده دستوری که باید پردازش کند را از طرف حافظه مربوط به یک برنامه (از طریق RAM یا به صورت مستقیم) دریافت می‌کند. این برنامه ممکن است در حداقل شرایط یک دستور و در حداکثر شرایط بینهایت دستور را برای پردازش به CPU ارسال کند. به همین دلیل هر یک از این دستورها باید در محل‌های جداگانه آدرس دهی شوند. اما مشکل اینجاست که واحد پردازشی CPU نمی‌داند کدام دستورات را در کدام یک از آدرس ها باید به ترتیب اجرا کند. برای حل این مشکل یک واحد دیگر به نام PC که مخفف عبارت Program Counter به معنای "شمارنده برنامه" است، وجود دارد. این واحد مسئول حفظ ترتیب و وضعیت دستوراتی است که به پردازنده ارسال می‌شوند. به طور ساده، واحد پردازشی CPU هر یک از آدرس‌هایی که برای پردازش نیاز دارد را از طریق این واحد شمارنده بدست می‌آورد. این دستورات ورودی می توان مثل کلیک روی یک دکمه در کیبورد باشد.
مرحله دوم: رمزگشایی

پس از دریافت دستورات، CPU باید بتواند این دستور را درک کند. واحد پردازنده CPU دستورات را در حالت کدهایی OP ( به معنای کدهای پردازشی یا Operation Codes) می‌تواند پردازش کند. کدهای پردازشی زبان قابل درک ماشین و سخت افزارها هستند.

نوشتن برنامه‌ها به زبان باینری بسیار سخت است به همین خاطر زبان‌های برنامه نویسی سطح بالایی وجود دارد که نوشتن برنامه را آسان‌تر می‌کند. زبان‌های برنامه نویسی مختلفی وجود دارد که سازندگان برنامه‌ها می‌توانند از آن‌ها استفاده کنند. به همین دلیل واحدی به نام Assembler (تبدیل کننده به اسمبلی) وجود دارد که ابتدا دستورات را به زبان سطح پایین اسمبلی (Assembly) تبدیل کرده سپس واحد دیگری این دستورات اسمبلی را به کدهای OP تبدیل می‌کند. حال این دستورات که به صورت کدهای OP در آمده اند، آماده پردازش در واحد پردازنده CPU هستند.
مرحله سوم: پردازش و اجرا

مرحله سوم و البته مهمترین مرحله، پردازش و اجرا است. در این مرحله واحد پردازنده CPU یک دستور باینری را از یک آدرس مخصوص در دست دارد. این واحد تمامی دستورات را به کمک واحد ALU (مخفف Arithmetic & Logic Unit و به معنای "واحد محاسبه و منطق")، پردازش می‌کند.

ممکن است درحین پردازش، نیاز به یک دستور دیگر باشد که در این صورت Program counter دستور مورد نیاز را در اختیار واحد پردازنده CPU قرار می‌دهد یا ممکن است واحد پردازش، دستورات را برای زمان دیگری در ثبات‌های (Registers) داخلی خود ذخیره کند.


مرحله چهارم: بازنویسی

معمولا هر دستور یک مقدار خروجی دارد که در این مرحله این مقدار خروجی در حافظه جانبی کامپیوتر (مانند هارد دیسک‌ها، دیسک‌های حالت جامد و...) ذخیره یا به سایر قطعات ارسال می‌شود. برای نمونه فرض کنید که یک دستور برای نشان دادن یک عبارت به CPU برای پردازش ارسال می‌شود. CPU پس از پردازش این دستور، همان عبارت را به عنوان خروجی بازمی‌گرداند یا به فرض، یک عمل ریاضی به عنوان مثال ۲ ضرب در ۲ به CPU برای پردازش ارسال می‌شود. حال CPU پس از پردازش عدد ۴ را به عنوان خروجی برمی‌گرداند.

در اغلب موارد، CPU این مقدار خروجی را که از مرحله اجرا و پردازش بدست آورده است را در ثبات‌های خود ذخیره می‌کند. با این کار، CPU می‌تواند از این خروجی‌ها به سرعت در دستورات دیگر استفاده کند. فرض کنید یک عملیات مقایسه به CPU برای پردازش ارسال می‌شود. در این گونه موارد، CPU از مقادیر خروجی قبلی که در ثبات‌های خود ذخیره کرده استفاده می‌کند تا نتیجه مقایسه را در یکی از ثبات‌های دیگر خود، یا به عنوان خروجی باز گرداند.
در این چهار مرحله اصلی، پردازنده فقط یک دستور که از Program Counter ارسال شده را پردازش می‌کند. پس از اتمام این چهار مرحله، درصورتی که دستور دیگری در صف پردازش وجود داشته باشد، توسط PC به سی پی یو داده می‌شود و مراحل از اول شروع می‌شوند تا زمانی که تمامی دستورات پردازش شوند.
http://bytegate.ir/cpu-%DA%86%DB%8C%D8%B3%D8%AA-%D9%88-%DA%86%DA%AF%D9%88%D9%86%D9%87-%DA%A9%D8%A7%D8%B1-%D9%85%DB%8C%DA%A9%D9%86%D8%AF%D8%9F/

پاسخ داده شد 19 Jun 2016 توسط مهندس پورنگ (26,950 امتیاز)

پرسشهای مرتبط

+5 رای
2 پاسخ 633 بازدید
+1 رای
1 پاسخ 424 بازدید
پرسیده شد 6 May 2016 در تکنولوژی توسط ناشناس
...