المعامل | في أردوينو

من موسوعة حسوب

يُجرِي المعامل | في لغة ++C العملية OR على كل بتين متقابلين من بتات العددين المعطيين بشكل مستقل ويعطي القيمة العددية الناتجة. وفقًا لهذا التعريف، إن كانت قيمة أحد البتَّين 1، فالقيمة الناتجة عن تطبيق العملية OR عليهما هي 1؛ خلا ذلك، ستكون القيمة الناتج هي 0. اطلع على الشكل التالي لفهم العملية بوضوح:

0  0  1  1    operand1
0  1  0  1    operand2
----------
0  1  1  1    result = operand1 | operand2

البنية العامة

operand1 & operand2;

أمثلة

مثالٌ على استعمال المعامل |:

int a =  92;    // 0000000001011100 :القمية الثنائية هي
int b = 101;    // 0000000001100101 :القيمة الثنائية هي
int c = a | b;  // الناتج في النظام الثنائي هو: 0000000001111101 وفي النظام العشري 125

أحد أشهر استعمالات العملية OR مع الأعداد الثنائية هو تعيين القيمة 1 إلى بت محدَّد (أو مجموعة من البتات) لقيمة عددية صحيحة دون المساس بالبتات المجاورة. تفحَّص المثال التالي الذي يشرح ذلك:

DDRD = DDRD | B11111100; 
// (xx | 00 == xx) ضبط البتات من 2 إلى 7 إلى القيمة 1 وترك البت 1 والبت 0 دون تغيير 
// مع الأرجل من 2 إلى 7 pinMode(pin, OUTPUT) تشبه هذه العملية تمامًا استدعاء

انظر أيضًا

  • المعامل &: يُجرِي في لغة ++C العملية AND على كل بتين متقابلين من بتات العددين المعطيين بشكل مستقل ويعطي القيمة العددية الناتجة.
  • المعامل >>: يُجرِي البتات الواقعة على يساره إلى اليسار عددًا محدَّدًا من الخانات مساويًا للقيمة الموجودة على يمينه.
  • المعامل <<: يُجرِي البتات الواقعة على يساره إلى اليمين عددًا محدَّدًا من الخانات مساويًا للقيمة الموجودة على يمينه.
  • المعامل ^: يُجرِي في لغة ++C العملية XOR على كل بتين متقابلين من بتات العددين المعطيين بشكل مستقل ويعطي القيمة العددية الناتجة.
  • المعامل ~: يُجرِي في لغة ++C العملية NOT على كل بت من البتات المعطاة بشكل مستقل -بخلاف المعامل & والمعامل |- ويعطي القيمة العددية الناتجة.
  • المعامل ||: يطبِّق العملية OR المنطقية على قيمتين أو تعبيرين منطقيين ويعيد القيمة المنطقية الناتجة.
  • المعامل =|: يُستعمَل المركَّب عادةً مع متغير وثابت من لضبط قيمة بت محدَّد (ضبطه إلى القيمة 1 أو HIGH).
  • درسٌ عمليٌّ على العمليات الحسابية التي تجرَى على البت.

مصادر