09380325205 admin@dmwebmaster.ir تهران امیرآباد دانشکده فنی دانشگاه تهران

معماری کامپیوتر چیست؟

معماری کامپیوتر چیست؟

شاید برای خیلی ازشما این سوال پیش اومده که معماری کامپیوتر چیست؟ و بعد از سرچ توی گوگل فقط به این جمله رسیدید :

“معماری کامپیوتر دانش طراحی مفهومی و شناخت اجزای کامپیوتر است.”

ولی این جواب همه سوالاتتون نبوده ،ما در اینجا میخوایم بگیم

اولا درس معماری کامپیوتر چی هست؟

چه پیش نیازهایی داره؟

و از چه فصل هایی تشکیل شده ؟

  • میریم سراغ سوال اول:

معماری کامپیوتر یعنی شناخت ، ساخت و چگونگی کار وعملکرد تمامی اجزای داخلی یک کامپیوتر!

خب اینکه خیلی سخته! بله، شاید سخت به نظر بیاد ولی ما قصد داریم به ساده‌ترین شکل مطالب رو بهتون آموزش بدیم که نه تنها براتون سخت نباشه بلکه ازش لذت ببرید.

  • سوال دوم ، این درس چه پیش نیازهایی داره؟

برای یادگیری این درس شما نیاز دارید ک درس مدارهای منطقی رو پاس کرده باشید (و البته بلد باشید D:)

  • سوال سوم که سوال مهمی هست، این درس از چه فصل هایی تشکیل شده؟

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

کدنویسی اسمبلی

بخش کدنویسی اسمبلی :

در این بخش شما یاد میگیرید به چه شکل دستورات مورد نظرتون رو به سخت افزار بدید تا عملیات مورد نظر انجام بشه، امروزه با توسعه زبان های برنامه نویسی و روی کار اومدن زبانهای جدید ، کدنویسی اسمبلی دیگه کاربرد آنچنانی نداره ولی برای درک بهتر مفهوم کدنویسی سخت افزار نیازهست که اون رو تا حد قابل قبولی یاد داشته باشید.

 

 

 

طراحی کامپیوتر پایه

بخش طراحی کامپیوتر پایه :

در این بخش شما با ساختار یک کامپیوترساده آشنا میشید و بعد ازاون یاد میگیرید که چطور اجزای این کامپیوتر باهم در ارتباطند و دستورات رو اجرا میکنند. نوشتن سیکل های دستورالعمل یکی از مباحث مهم این فصل به حساب میاد.

 

 

 

 

بخش طراحی واحد کنترل به صورت ریز پردازنده:

این بخش ، یکی از بخش های مهم و دشوار این درس به حساب میاد که در اون یک کامپیوتر ساده با قابلیت انجام چهار دستور خاص معرفی میشه. این کامپیوتر دارای بخش کنترل یونیت هست که به صورت ریزپردازنده ای نشان میدهیم نقش کنترل یونیت چیست و چگونه عملیات ها انجام میشوند و میکرواپریشن های (micro operation) مربوط به اون رو مینویسیم.

 

 

 

پردازنده میپس

بخش پردازنده ی میپس (mips) :

از مباحت مهم این بخش میشه به پایپ لاین اشاره کرد که روشی برای سریعتر کردن روند اجرای دستورالعمل هاست.

ما سعی کردیم توی این پست تمام سوالات شمارو پوشش بدیم و یک دید کلی از این درس در اختیارتون بذاریم.

اگر بازم سوالی وجود داره میتونید با ما در ارتباط باشید .

ضرب ساده ۴ رقمی

ضرب ساده توی کامپیوتر دقیقا مثل همون ضرب‌هاییه که ما روزمره ازشون استفاده می‌کنیم

مثلا اگه بخوایم ضرب ۱۹×۴۱ رو حساب کنیم اونارو زیر هم می‌نویسیم و تک تک رقمای عدد دوم رو در عدد اول ضرب می‌کنیم، به این شکل:

 

 

 

 

 

 

 

ضرب دودویی بدون علامتبرای ضرب دودویی هم به همین صورت دو عدد رو زیر هم می‌نویسیم و بیت به بیت ضربشون می‌کنیم

مثلا برای ضرب  دو عدد  ۱۰۱۱ و ۱۱۰۱ در صورتی که دو عدد علامتدار نباشن به شکل زیر عمل می‌کنیم:

 

 

 

 

 

 

 

ضرب دودویی اعداد علامتدار

 

حالا اگه همین دو عدد علامتدار باشن باید وقتی بیت آخر ( که بیت علامت هست) رو ضرب می‌کنیم به جای جمع کردن ،عملیات تفریق رو انجام بدیم.

sign extend هر مرحله هم به بیت آخر عدد بستگی داره (یعنی اگر ۰ بود ۰ می‌ذاریم و اگه هم ۱ بود ۱ رو ادامه می‌دیم) :

پ.ن: برای عملیات تفریق باید مکمل دوم عدد رو به دست بیاریم.

به زودی …