5- تركيب (بناء) مجموعة تعليمات الميكروكونترولر PIC16
وعلاقة التعليمات بوحدة الحساب والمنطق ALU
جميع التعليمات مكونة من كلمة واحدة بطول 14 خانة bits وهو أيضا طول خلية ذاكرة البرنامج .
تتكون التعليمات من جزئين (مكونين : (
الجزء الأول : شفرة (كود) العملية operation code
يحتوى على أمر للميكروكونترولر بالقيام بتنفيذ عملية معينة تذكر فى هذا الجزء ( عملية نقل بيانات - عملية منطقية- عملية حسابية ...) ولذلك يسمى هذا الجزء "شفرة أو كود العملية " operation code
الجزء الثانى :المعاملات operands
وهى عبارة عن البيانات (المعلومات) المطلوبة لتنفيذ التعليمة وتسمى operands , والمعاملات قد تكون عناوين أو بيانات والمعاملات فى الميكروكونترولر PIC16 يمكن أن تكون
عنوان مكون من 7 خانات بذاكرة البيانات .
عنوان مكون من 11 خانة بذاكرة البرنامج .
بيانات مكونة من 8 خانات .
عنوان خانة لسجل بذاكرة البيانات.
خانة واحدة لبيان مكان وضع أو حفظ نتيجة التعليمة هل هو فى سجل العمل W أو فى ذاكرة البيانات .
وعامة فان بعض التعليمات قد لا تحتاج إلى معاملات بينما تعليمات أخرى قد تحتاجإالى أكثر من معامل واحد .
ومن ثم يمكن ان يكون لدينا (كما فى الشكل العلوى) :
1- تعليمات لتنفيذ عمليات باستخدام سجلات بذاكرة البيانات ولها معاملان .
المعامل الأول هو عنوان هذا السجل والمكون من 7 خانات .
المعامل الثانى خانة واحدة تبين الهدف أو المقصود لتخزين النتيجة به هل هو سجل العملW أو السجل المبين فى التعليمة الاصلية .
2- تعليمات تحتوى على بيانات مكونة من 8 خانات تذكر فى التعليمة وتكون هى المعامل الوحيد .
3- تعليمات تحتوى على عنوان بذاكرة البرنامج مكون من 11 خانة ويكون هذا العنوان هو المعامل الوحيد .
4- تعليمات لتنفيذ عمليات على خانة بذاكرة البيانات تحتاج إلى معاملين .
المعامل الأول هو عنوان الخانة داخل السجل .
المعامل الثانى هو عنوان لسجل بذاكرة البيانات مكون من 7 خانات .
علاقة التعليمات بوحدة الحساب والمنطق ALU
قبل البحث فى مجموعة التعليمات يجدر بنا البحث فى علاقة التعليمات بوحدة الحساب والمنطق ALU كما فى الشكل التالى :
فهم هذا الشكل يساعد على فهم مجموعة التعليمات .
إنظر إلى الشكل ولاحظ أن :
وحدة الحساب والمنطق ALU يمكن أن تعمل على بيانات (معطيات) من مصدرين .
أحدهما هو سجل العمل W والأخر إما أن يكون قيمة ثابتة (محددة حرفيا) literal متضمنة فى كلمة التعليمة, أو قيمة من ذاكرة البيانات والتى يطلق عليها ( بمعرفة شركة ميكروشيب ( سجلات الملفات أو ملفات التسجيل .
القيمة الثابتة المحددة حرفيا literal : هى بايت byte من البيانات موجود(مصحوب) فى تعليمة خاصة والتى يدرجها المبرمج فى البرنامج .
وهكذا يمكننا توقع رؤية بعض التعليمات التى تستدعى من ذاكرة البيانات وتعليمات أخرى تحتاج إلى بيانات بقيمة ثابتة محددة literal مع تحديد متى تستخدم .
وسوف تاتى أمثلة على كل ذلك .
البيانات التى تقوم التعليمة بإجراء العمليات عليها أو تستخدمها تسمى المعامل operand , المعاملات يمكن ان تكون بيانات او عناوين وكما ذكرنا بعض انواع البيانات يحتاج دائما إلى معامل معين يلحق بها وتعليمات أخرى لا تحتاج إلى معامل .
بعد أن تنفذ التعليمة أين يتم تخزين (حفظ) النتيجة ؟
هناك خياران :
إما أن توضع النتيجة فى المسجل W
أو
تحفظ مرة ثانية فى ذاكرة البيانات أى السجلات.
اى الخيارين مستخدم ؟
ذلك ثابت فى تعليمات معينة وفى البعض الآخر يحدد بحالة خانة خاصة محددة فى التعليمة .