ذاكرة السجلات: أسرع أنواع الذاكرة في أنظمة الحاسوب
تعتبر ذاكرة السجلات (بالإنجليزية: Registers memory) المدمجة داخل وحدة المعالجة المركزية من أسرع أنواع ذاكرة الحاسوب. تستخدم هذه الذاكرة لمعالجة البيانات المدخلة من قبل المستخدم، وتتميز بكونها الأصغر بين أنواع الذاكرة المختلفة في الحاسوب، حيث يبلغ حجمها عادةً ما بين 32-64 بت.
تلعب ذاكرة السجلات دوراً حيوياً في أداء وحدة المعالجة المركزية، إذ تعتمد سرعتها على عدد وحجم البتات المخزنة في هذه الذاكرة. تحتفظ ذاكرة السجلات بشكل مؤقت بالبيانات والمعلومات التي تحتاجها وحدة المعالجة المركزية بشكل متكرر.
عملية عمل ذاكرة السجلات
تُستخدم سجلات الذاكرة في وحدة المعالجة المركزية لتخزين البيانات والوصول إليها. بما أن وحدة المعالجة المركزية لا تستطيع الوصول المباشر إلى البيانات المخزنة في الذاكرة، فإنه من الضروري تمرير المعلومات أولاً عبر السجلات لجلب التعليمات والأوامر. تتكون هذه العملية من ثلاث مراحل رئيسية، وهي:
- جلب المعلومات: (بالإنجليزية: Fetch)؛ وهي الخطوة الأساسية في هذه الدورة، حيث يتم خلالها سحب البيانات والتعليمات من الذاكرة الرئيسية وتخزينها في السجلات.
- فك التشفير: (بالإنجليزية: Decode)؛ وهي المرحلة التي تقوم فيها وحدة المعالجة المركزية بفك تشفير البيانات المكتسبة من الذاكرة الرئيسية، والتحقق ما إذا كانت قادرة على فهم وتفسير الأوامر.
- التنفيذ: (بالإنجليزية: Execute)؛ وهي المرحلة النهائية من الدورة، حيث يتم تنفيذ الأوامر ومعالجة البيانات، مع إمكانية تخزين النتيجة في أحد السجلات لاستخدامها لاحقاً.
أنواع السجلات في ذاكرة السجلات
تتضمن ذاكرة السجلات في وحدة المعالجة المركزية مجموعة متنوعة من السجلات، وفيما يلي بعض الأنواع الرئيسية:
- سجلات العناوين: (بالإنجليزية: Address registers)؛ وهي السجلات التي تحتفظ بعناوين الذاكرة الرئيسية البالغة للبيانات والأوامر.
- سجل البيانات: (بالإنجليزية: Data register)؛ وهو السجل المسؤول عن الاحتفاظ بالبيانات التي يتم نقلها بين الذاكرة الرئيسية ووحدة المعالجة المركزية، سواء إلى الأمام أو إلى الوراء.
- سجل الفهرس: (بالإنجليزية: Index register)؛ وهو السجل الذي يحمل قيمة أساسية يُضاف إلى عنوان الذاكرة للوصول بكفاءة إلى تلك العناوين.
- سجل مؤشر المقطع: (بالإنجليزية: Segment pointer register)؛ وهو السجل الذي يحتوي على عنوان البداية لمقطع من الذاكرة الذي يحوي كوداً برمجياً معيناً. يتم توفير سجل مرجعي لبداية هذا المقطع من الذاكرة لتطبيق نظام التشغيل عند تنفيذه عبر المعالج، ويتطلب كل كود برمجي لأن يكون له سجل خاص بالمؤشر.