مهدی عسکری
مدرس دوره های ICDL

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

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

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
وب سایت توسینسو

حافظه

واحد حافظه در خارج ریز پردازنده قرار داره و از اون جهت ذخیره سازی اطلاعات، داده ها و نتایج حاصل از عملیات به روی اونها استفاده می شود.کلیه ی این داده ها به صورت رشته های 0 و 1 در حافظه نگهداری میشوند و هر برنامه ی کامپیوتری جهت اجرا، ابتدا وارد حافظه می شود.

ساختار حافظه

در کامپیوتر، اطلاعات عددی و غیر عددی با استفاده از از اعداد 0 و 1 ذخیره و نمایش داده میشود.بنابراین هر واحد حافظه می باید قابلیت نگهداری یک رقم 0 یا 1 رو داشته باشه.

  • واحد های حافظه
    1. بیت: کوچکترین واحد حافظه است که می تواند یکی از ارقام 0 یا 1 را در اون ذخیره کرد.
    2. بایت: به هر 8 بیت متوالی یک بایت میگیم

در ادامه ما یکسری تغاریف ابتدایی داریم که برای درک بهتر و ملموس تر این بحث با هم مرورشون میکنیم:

  1. کلمه: حافظه ی اصلی کامپیوتر رو میتونیم به صورت جدولی از خانه ها فرض کنیم.به هر سطر از این جدول، یک کلمه میگیم.(یا خانه های حافظه)
  2. طول کلمه:تعداد bitهای هر کلمه رو، طول آن کلمه میگوییم.طول کلمه معمولا 32،16،8 و یا 64 است.
  3. نیبل(Nibel):به هر 4 بیت، یک نیبل می گوییم.
  4. کاراکتر:هر یک از حروف، ارقام و علائم را یک کاراکتر میگیم.(هر چیزی که بتونیم با کیبورد تولید کنیم.)
  5. Field: به تعدادی کاراکتر مرتبط با هم یک Field میگیم.
  6. Record:به تعدادی Field مرتبط با یکدیگر یک Record میگوییم.
  7. File:به تعدادی Record مرتبط با هم Field میگوییم
  8. پایگاه داده(Data Base):به تعدادی File مرتبط با همدیگه یک Data Base میگوییم.

حافظه ها

در کامپیوتر ها از 2 نوع حافظه استفاده میشود.

  1. حافظه ی اصلی
  2. حافظه های جانبی

خود حافظه اصلی به دو قسمت زیر تقسیم میشه که با هم مرور میکنیم:

  • (RAM(Random Access Memory :این نوع حافظه ی اصلی از جنس نیمه هادی است و از چند IC کنار هم تشکیل شده.شیوه ی کارکرد این حافظه بر همان اسا خانه های حافظه است که پیش از این توضیح دادم.داده های موجود در RAM، قابل پاک شدن و جایگزینی هستند.این داده ها به صورت موقت در RAM نگهداری می شوند و با قطع برق پاک میشوند.هر برنامه جهت اجرا ابتدا در RAM قرار میگیرد.

از RAM در 4 مورد زیر استفاده میشود:

  1. داده ها تا زمانی که مورد پردازش قرار بگیرند در بخشی از حافظه به نام بخش ورودی حافظه نگهداری می شوند( ISA یا Input Storage Area)
  2. بخشی به نام کارگاه حافظه مانند یک صفحه ی یادداشت، جهت نگهداری نتایج حاصل از پردازش مورد استفاده قرار میگیرد(WSA یا Working Storage Area)
  3. بخشی از حافظه، نتایج نهایی را تا هنگام خروج آنها در خود ذخیره میکند.به این بخش، بخش خروجی حافظه میگیم(OSA یا Output Storage Area)
  4. بخش دیگر حافظه،به عنوان بخش نگهداری برنامه مورد استفاده قرار میگیرد.هر برنامه ای که در حال اجرا ست، دستورالعمل های خودش رو در این بخش نگهداری میکنه.(PSA یا Program Storage Area).
  • (ROM(Read Only Memory : این حافظه نیز از جنس نیمه هادی است و به شکل IC درون حافطه قرار دارد.این حافظه که معمولا توسط شرکتهای سازنده ی کامپیوتر پر میشود، حاوی یکسری اطلاعات، جهت راه اندازی اولیه سیستم می باشد.

از مهمترین تفاوتهای RAM و ROM به موارد زیر میتونیم اشاره کنیم:

  1. RAM قابل جایگزینی و نوشتن است اما ROM چنین نیست
  2. اطلاعات RAM به صورت موقت است، اما اطلاعات ROM دائمی است.

ROM ها به 3 دسته ی کلی زیر تقسیم میشند:

  1. PROM یا Programmable Read Only Memory : این دسته قابل برنامه ریزی هستند
  2. EPROM یا Erasable Programmable Read Only Memory : این دسته قابل برنامه ریزی پاک شدنی(توسط نور ماوراء بنفش) هستند.
  3. EEPROM یا Electrically Erasable Programmable Read Only Memory : این دسته قابل برنامه ریزی پاک شدنی با جریان الکتریکی هستند.

حالا بعد از آشنایی که با حافظه های اصلی پیدا کردیم، به سراغ حافظه های جانبی میریم.

حافظه جانبی

به دلیل اینکه حافظه ی اصلی با ظرفیت بالا معمولا گرون هست، کاربر ترجیحا از حافظه های جانبی استفاده میکنه.شیوه ی کارکرد این حافظه به این ترتیب است که User قبل از حاموش کردن دستگاه، اطلاعات رو از RAM به حافظه ی جانبی منتقل میکنه.مهمترین این حافظه های جانبی، HARD DISK ها هستند.از دیگر موارد حافظه ی جانبی به موارد زیر میتونیم اشاره کنیم:

نوار مغناطیسی، فلش مموری ها، DVD ها و...

همچنین از دلایل استفاده از حافظه های جانبی به موارد زیر میتونیم اشاره کنیم:

  1. حافظه ی اصلی با قطع برق پاک میشود.
  2. ظرفیت حافظه ی اصلی بسیار کم است
  3. حافظه ی جانبی قابلیت جابجایی و انتقال داره.

حافظه پنهان (Cache Memory)

این حافظه که که عمدتا گرانقیمت و در عین حال بسیار سریع است به صورت IC عرضه میشه و از عوامل بسیار مهم در ازدیاد سرعت پردازش ماست.کارکرد اون دقیقا به مانند یک دفتر چرک نویس که محل ذخیره ی موقت اطلاعات و دستورالعمل هایی هست مکه در حین اجرای برنامه به دفعات مورد استفاده قرار میگیرند.به همین دلیل این حافظه تا حد قابل ملاحظه ای سرعت پردازش رو افزایش میده.داده ها میتونند به صورت خودکار از حافظه ی پنهان به حافظه ی اصلی منتقل شوند و مورد استفاده قرار بگیرند.

حافظه افزوده (Extended Memory)

هر چقدر گنجایش RAM یک سیستم بیشتر باشه، اطلاعات بیشتری رو هم میتونه در خودش ذخیره کنه.از طرفی برخی برنامه ها نسبت به بقیه نیاز به حافظه ی بیشتری دارند.میزان حافظه رو میتونیم با اضافه کردن حافظه ی دیگه ای افزایش داد.به عنوان مثال وقتی RAM یک دستگاه 4Gb هست، ما 4Gb دیگه اضافه میکنیم تا میزان کل حافظه یه 8Gb برسد.در این حالت به اون 4Gb که اضافه کردیم، حافظه ی افزوده یا Extended Memory میگیم. در ادامه به بررسی CPU، ALU و دیگر قسمت ها میپردازیم.

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

CPU چیست؟

مخفف عبارت Central Processing Unit هست که از 2 بخش اساسی تشکیل شده است.

  1. واحد محاسبه و منطق یا (ALU (Arithmetic and Logical Unit
  2. واحد کنترل یا (CU( Control Unit

ALU یا واحد محاسبه و منطق

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

(CU( Control Unit چیست؟

این واحد ، واحد نظارت، تفسیر و انتخاب دستور العملهاست.این واحد هدایت کل سیستم رو بر عهده داره.از مهمترین وظایف این واحد میتونیم به موارد زیر اشاره کنیم:

  1. تفسیر دستورات موجود در حافظه
  2. تعیین آدرس برای کلیه ی اطلاعات و دستورالعمل های اجرایی
  3. تعیین زمان لازم جهت انتقال داده ها و اطلاعات بین واحد های حافظه و ALU
  4. برقراری ارتباط بین واحد مرکزی پردازش( CPU) و واحد های ورودی و خروجی
  5. نظارت بر انجام کلیه عملیات کامپیوتر

سرعت پردازش ( Process Spedd)

زمان لازم برای اجرای یک برنامه به چند عامل بستگی داره، عواملی چون تعداد دستورات، مقدار داده ها و سرعت کامپیوتر. خود سرعت کامپیوتر به 2 عامل بستگی داره:

  1. دوره ی پردازنده یا Process Cycle
  2. سرعت انتقال داده ها یا Data Transfer Speed

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

ریز پردازنده

واحد پردازش مرکزی (CPU) در Micro Computersها به نام Micro Processor یا ریز پردازنده شناخته می شود.این واحد یک تراشه ی کوچک است که ساختار آن درست مطابق CPUها(CUوALU) می باشد.قدرت محاسبه ی Micro Processorها توسط 2 عامل تعیین میشه:

  1. طول کلمه: تعداد بیت هایی که پردازنده می تواند در یک لحظه مورد پردازش قرار دهد
  2. سرعت ساعت یا Clock Speed : تعداد ضربانهایی که در 1 ثانیه تولید می شود و با واحد MHz(مگا هرتز) سنجیده می شود.هر چقدر میزان این عدد بالاتر باشه، قدرت پردازش بیشتر میشه.

وظایف ریز پردازنده ها به 4 دسته ی کلی تقسیم میشه:

  1. آوردن دستورالعملها از حافظه که به آن واکشی یا Fetch میگیم
  2. رمز گشایی دستورالعملها به منظور انجام عملیات Decode
  3. پردازش دستورالعملها یا Process که این قسمت در ALU انجام میگیره
  4. بردن نتایج به حافظه ی اصلی یا Store

خطوط انتقالی ریز پردازنده ها

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

  1. مسیر داده ها یا Data Bus : این خطوط، خطوطی هستند که CPU با استفاده از اونها میتونه داده ها رو بین حافظه، دستگاه های ورودی و خروجی مبادله کنه.هرچقدر پهنای این باند بیشتر باشه(64،32،16،8) سرعت انتقال داده ها بالاتر میره و در نتیجه قدرت پردازش افزایش پیدا میکنه.
  2. مسیر آدرس یا Address Bus : عبارتست از خطوطی که CPU از طریق آنها آدرس خانه های حافظه رو مشخص میکنه تا امکان دستیابی مستقیم به اونها فراهم بشه.هر چقدر تعداد این خطوط بالاتر باشه، امکان دسترسی به حافظه نیز از نظر تعداد خانه ها افزایش پیدا میکنه.
  3. مسیر کنترل:عبارتست از مسیری که CPU از طریق اونها با ارسال یکسری Signal عملکرد اجزای کامپیوتر رو تحت کنترل میگیره.از این قسمت در واحد CU استفاده میشود.

کمک پردازنده ها یا Co Processor

این تراشه ها که بر روی بسیاری از دستگاه های کامپیوتر قرار میگیرند، وظیفه ی انجام قسمتی از امور مربوط به CPU رو بر عهده میگیرند تا CPU با بار کمتری مواجه بشه.امیدوارم که براتون این مبحث مفید واقع شده باشه.


نظرات