مفتاح إجابات المعلّم

الجدولة والأنوية والأحداث

اجمع أربعة أنواع من الأدلة: توقّع الحالة ذات الصلة؛ السلوك عبر حالات متنوعة تشمل الحدود؛ تفسير يستند إلى سجلّ التنفيذ والحالة؛ وتصحيح معلّل لاختلاف واحد. صنّف كل جانب بأنه ناشئ، أو متحقّق بمساعدة، أو مستقل، على الورق أو وفق آلية مدرستك المعتمدة. اجتياز التحدّي دليل على سلوك الآلة، وليس إثباتًا لتأليف الشيفرة أو إتقان شامل. اقبل البرامج الصحيحة المكافئة؛ المفتاح العام نموذج، لا الإجابة الوحيدة الممكنة.

مادة تعليمية متاحة للجميع. الحلول أمثلة؛ قد تجتاز البرامج الصحيحة المكافئة الفحوص الفعلية أيضًا.

25. الجدولة التعاونية

تناوب بين المهام وميّز سياسة الجدولة عن تعليمات المعالج.

فتح هذا الدرس →

1. توقّع وتتبّع

قبل تشغيل برنامج التجربة، توقّع مخرجاته وتتبّع أول ثلاث تعليمات تُنفّذ. راقب السجلات أو الرايات أو الذاكرة ذات الصلة حسب الحاجة. ثم نفّذ البرنامج خطوةً خطوة للمقارنة.

LOAD 1
CALL taskA
CALL taskB
HALT
taskA: PRINT
SLEEP 500
RETURN
taskB: LOAD 101
PRINT
RETURN

أضف المدخلات إلى الطابور: لا يوجد

هيّئ الذاكرة: جميع البايتات صفر في البداية

إجابات توقّع التجربة

المخرجات: 1, 101

التعليمةPC قبلPC بعدR0 قبلR0 بعدالحالة ذات الصلةالمخرجات
LOAD0101{"registers":[1,0,0,0,0,0,0,0],"flags":{"zero":false,"negative":false,"overflow":false},"sp":255,"stack":[],"callStack":[],"loopStack":[],"memoryReads":[],"memoryWrites":[]}لا يوجد
CALL1411{"registers":[1,0,0,0,0,0,0,0],"flags":{"zero":false,"negative":false,"overflow":false},"sp":254,"stack":[],"callStack":[2],"loopStack":[],"memoryReads":[],"memoryWrites":[]}لا يوجد
PRINT4511{"registers":[1,0,0,0,0,0,0,0],"flags":{"zero":false,"negative":false,"overflow":false},"sp":254,"stack":[],"callStack":[2],"loopStack":[],"memoryReads":[],"memoryWrites":[]}1

2. ابنِ وافحص

اقرأ عدد جولات من 0 إلى 3. ابدأ عدّاد المهمة A عند 0 وعدّاد B عند 100. في كل جولة استدعِ A لزيادة عدّادها وطباعته، ثم B لزيادة عدّادها وطباعته.

أنواع التعليمات المطلوبة: INPUT, LOOP, CALL, RETURN

مثال لحل التحدّي

INPUT
COPY R0 R3
LOAD 0 R1
LOAD 100 R2
LOOP R3
CALL taskA
CALL taskB
RETURN
HALT
taskA: LOAD R1
ADD 1
COPY R0 R1
PRINT
SLEEP 0
RETURN
taskB: LOAD R2
ADD 1
COPY R0 R2
PRINT
SLEEP 0
RETURN

حالات الفاحص الفعلية

الحالة 1
المدخلات
0
الذاكرة الابتدائية
جميع البايتات صفر في البداية
المخرجات المتوقعة
لا يوجد
الحالة 2
المدخلات
1
الذاكرة الابتدائية
جميع البايتات صفر في البداية
المخرجات المتوقعة
1, 101
الحالة 3
المدخلات
3
الذاكرة الابتدائية
جميع البايتات صفر في البداية
المخرجات المتوقعة
1, 101, 2, 102, 3, 103

3. اشرح الآلة

هل تبادل الأدوار بـCALL وRETURN هو نفسه الاستباق العتادي؟

ملاحظة الاستدلال والتعليم

لا. هو نموذج موزِّع تعاوني؛ وتنتمي سياسة المجدوِل والحصة إلى محاكاة الأنظمة المسمّاة بوضوح.