سجل الحالة
قبل الخوض في التفاصيل، سجل الحالة أو سجل الأعلام ، أو سجل رمز الحالة هو سجل يحتوي على معلومات حول حالة المعالج، حيث يُمكن للبتات الفردية أن تُقرأ أو تُكتب ضمنيًا أو صراحةً بواسطة تعليمات لغة الآلة التي تُنفذ على المعالج. أي أن سجل الحالة يسمح للتعليمات باتخاذ إجراء بناءً على نتيجة تعليمة سابقة. يُمكن تعريف سجل الحالة كذلك باعتباره مجموعة من بتات أعلام الحالة للمعالج. ومن الأمثلة على هذه السجلات سجل الأعلام في معمارية إكس 86، والأعلام في سجل كلمة حالة البرنامج في معمارية نظام آي بي إم/360 وحتى معمارية زد، وسجل حالة برنامج التطبيق في معمارية آرم ذات 32 بت. (لا تزال رموز الحالة مستعملة في معمارية أرم ذات 64 بت، ولكن ليس بنفس القدر، أي كما هو الحال في أغلب المعماريات الأخرى، لم تعد تُستعمل للتنبؤ بجميع التعليمات). ونتناول فيما يلي مزيدًا من التفاصيل.
ومن ناحية أخرى، لا تستعمل بعض معماريات وحدة المعالجة المركزية، مثل معمارية ميبس ومعمارية ألفا، سجل أعلام مخصصًا، كما أن بعض الأجهزة لا تقوم بتعيين أو قراءة الأعلام ضمنيًا، فإما أنها لا تُمرر معلومات الحالة الضمنية بين التعليمات على الإطلاق، أو تُمررها في سجل عام مُحدد صراحةً.
وفي السياق ذاته، تُعدّل الأعلام في سجل الحالة عادةً كنتيجةً للعمليات الحاسوبية ومعالجة البتات. فمثلًا، قد يتم ضبط قيمة بت معينة إذا كانت نتيجة العملية تساوي صفرًا، وقد تُمسح إذا كانت نتيجة العملية لا تساوي صفرًا. كذلك قد تُعدّل أنواع أخرى من التعليمات الأعلام كذلك للإشارة إلى الحالة. فمثلًا، قد تفعل تعليمة السلسلة ذلك للإشارة إلى ما إذا كانت التعليمة قد انتهت بسبب الوصول إلى حالة تطابق/عدم تطابق أو بسبب الوصول إلى نهاية السلسلة. تُقرأ الأعلام بواسطة تعليمة شرطية لاحقة بحيث لا يحدث الإجراء المحدد بحسب المعالج (قفزة، استدعاء، إرجاع، إلخ) إلا إذا أشارت الأعلام إلى نتيجة محددة للتعليمة السابقة.
إضافةً إلى ذلك، قد يحتوي سجل الحالة غالبًا على حقول أخرى كذلك، مثل أعلام أكثر تخصصًا، وبتات تمكين المقاطعة، وأنواع مماثلة من المعلومات. أثناء المقاطعة، يمكن حفظ حالة الخيط قيد التنفيذ (واستدعاؤها لاحقًا) عن طريق تخزين القيمة الحالية لسجل الحالة مع عداد البرنامج والسجلات النشطة الأخرى في مكدس الجهاز أو في منطقة أخرى محجوزة من الذاكرة.
أعلام أخرى
من جهة ثانية، يحتوي سجل الحالة في بعض المعالجات كذلك على أعلام أخرى. ويوضح الجدول التالي بعض هذه الأعلام:
الأعلام الشائعة
وفي السياق ذاته، يتضمن الجدول التالي قائمة بأعلام سجل حالة وحدة المعالجة المركزية الأكثر شيوعًا، والمُطبقة في جميع المعالجات الحديثة على وجه التقريب:
معماريات معالجات مركزية بدون أعلام
إضافةً إلى ذلك، تُمكّن أعلام الحالة التعليمات من العمل بناءً على نتيجة التعليمات السابقة. في المعالجات ذات المعمارية الأنبوبية، مثل المعالجات العددية الفائقة والمعالجات التخمينية، قد يُؤدي ذلك إلى مخاطر تُبطئ المعالجة أو تتطلب أجهزة إضافية للتغلب عليها. كذلك تستغني بعض معالجات النصوص ذات التعليمات الطويلة جدًا عن أعلام الحالة، وتقوم تعليمة واحدة بإجراء اختبار وتحديد الإجراء المطلوب بناءً على نتيجة هذا الاختبار، مثل: قارن a مع b وانتقل إلى c إذا كانت النتيجة متساوية. وفي هذه الحالة لا يتم حفظ نتيجة الاختبار للتعليمات اللاحقة.
📝 هل في هذه المقالة خطأ؟
إذا وجدت معلومة تحتاج تصحيحاً أو إضافة، أو أردت حذف المقالة، أرسل لنا طلباً وسنراجعه.
ما رأيك في هذه المقالة؟