ما هو الـ CPU
جزء من قسم الأساسيات في رحلة Assembly على Coddy. الدرس 1 من 45.
وحدة المعالجة المركزية (CPU) هي عقل الحاسوب. لكنها، بخلاف عقل الإنسان، بسيطة جدًا في الواقع. فهي لا تفعل سوى شيء واحد: تقرأ التعليمات من الذاكرة وتنفذها، واحدة تلو الأخرى، بسرعة كبيرة. عندما تكتب شيفرة Assembly، فأنت تعطي تعليمات مباشرة لوحدة المعالجة المركزية.
على عكس اللغات عالية المستوى مثل Python أو JavaScript التي تخفي تفاصيل الأجهزة، تتيح لك لغة التجميع التحكم بدقة فيما تفعله وحدة المعالجة المركزية، خطوة بخطوة.
تخيّل وحدة المعالجة المركزية كعامل سريع جدًا:
- لا يستطيع التفكير أو اتخاذ القرارات بمفرده
- يتبع أوامر بسيطة مثل "اجمع هذين العددين" أو "انقل هذه القيمة إلى هناك"
- ينفذ ملايينًا من هذه الأوامر البسيطة كل ثانية
توجد داخل وحدة المعالجة المركزية صناديق تخزين صغيرة تُسمى السجلات. يحتوي السجل على رقم واحد. تستطيع وحدة المعالجة المركزية الوصول إلى السجلات بسرعة فائقة، وبسرعة أكبر بكثير من الوصول إلى الذاكرة الرئيسية (RAM).
تحتوي وحدة المعالجة المركزية أيضًا على سجل خاص يُسمّى عداد البرنامج (PC). يحتفظ عداد البرنامج بعنوان الذاكرة للتعليمة التالية التي سيتم تنفيذها. بعد كل تعليمة، ينتقل عداد البرنامج تلقائيًا إلى العنوان التالي.
حقائق أساسية عن وحدة المعالجة المركزية:
| الحقيقة | التوضيح |
|---|---|
| تنفذ التعليمات واحدة تلو الأخرى | ترى كل تعليمة نتيجة التعليمة التي سبقتها. تحتوي وحدة المعالجة المركزية الحديثة على عدة أنوية، لذا يمكنها تشغيل عدة برامج في الوقت نفسه |
| لا تفهم إلا الأرقام | كل شيء (التعليمات والبيانات والعناوين) هو رقم |
| تحتفظ بقدر ضئيل جدًا من البيانات بنفسها | تحتفظ السجلات بالقيم التي تعمل عليها، وتحتفظ الذاكرة المخبئية بنسخ من البيانات التي استُخدمت مؤخرًا من ذاكرة الوصول العشوائي (RAM). أما بقية بيانات البرنامج فتُخزَّن في ذاكرة الوصول العشوائي (RAM) |
| سريعة للغاية | تنفذ وحدات المعالجة المركزية الحديثة مليارات التعليمات في الثانية |
جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
2أنظمة العد
لماذا النظام الثنائي؟الأعداد الثنائيةمن العشري إلى الثنائيلماذا النظام الست عشري؟من الست عشري إلى العشريمن العشري إلى الست عشريASCII والست عشري5استدعاء النظام Exit Syscall
ما هو الـ Syscall؟استدعاء النظام Exit Syscall (60)رموز الخروج (Exit Codes)ملخص: الخروج النظيف (Clean Exit)تدرّب بنفسك: Playground لـ Assembly