أشكال وطريقة التمثيل الأعداد
المترجم الميكروسى يمكنه التعامل مع البيانات من النوع : العشرى و الثنائى و السداسى عشرى والثمانى . يمكننا تمثيل القيمة العددية بعدة طرق . للتوضيح , نفترض أننا نريد تحميل القيمة 187 بالسجل PORTB باستخدام الميكروسى :
· التمثيل العشرى Decimal:
لتمثيل عدد عشرى فقط ضع قيمته بدون أى اختصار كما فى السطر التالى :
PORTB = 187;//التمثيل العشرى
ملحوظة هامة :
يجب ألا يبدأ العدد العشرى بالصفر على الأطلاق , لأن الميكروسى سوف يفسره على أنه عدد ثمانى .
مثال :
PORTB = 25 تمثل 25 عشرى .
PORTB = 025 تمثل ثمانى .
· التمثيل السداسى عشرى Hexadecimal :
لتمثيل العدد السداسى عشرى يجب أن يبدأ "بالبادئةprefix" 0x (أو 0X ) قبل العدد السداسى عشرى ( من 0 إلى F) .
مثال :
PORTB = 0Xbb; // تمثيل سداسى عشرى للعدد العشرى 187
Or
PORTB = 0XBB; // تمثيل سداسى عشرى للعدد العشرى 187
· التمثيل الثنائى Binary :
لتمثيل العدد الثنائى يجب أن يبدأ "بالبادئةprefix" 0b (أو 0B ) قبل العدد الثنائى .
مثال :
PORTB; = 0b10111011; // التمثيل الثنائى للعدد العشرى 187
Or
PORTB; = 0B10111011; // التمثيل الثنائى للعدد العشرى 187
التمثيل الثنائى لهذا العدد كما يلى :
ملحوظة : الخانة ذات الأهمية القصوى MSB هى أقصى خانة جهة اليسار . أى خطأ فى تمثيل العدد الثنائى يسبب عدم عمل البرنامج بالطريقة الصحيحة .
· التمثيل الثمانى Octal :
النظام الثمانى ليس واسع النطاق اليوم . على الرغم من ذلك فأن الميكروسى يدعم تمثيل هذا النوع من الأعداد , يجب علينا استخدامها فقط عند الحاجة .
لتمثيل العدد الثمانى يجب أن يبدأ "بالبادئةprefix"0 (zero) قبل العدد الثمانى .
مثال :
PORTD = 0273; // التمثيل الثمانى للعدد العشرى 187
تحذير :
ينبغى عدم الخلط مع الأعداد الثمانية . الأعداد الثمانية يسبقها بادئة هو الصفر مثل 0140 هو عدد ثمانى . الأعداد العشرية لا يسبقها بادئة مثل 140 هو عدد عشرى .