قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:328
قديم 03-11-2011, 09:29 PM المشاركة 1   
افتراضي ملخص العوامل المختصة بالبتات المفردة Bitwise Operators Twitter FaceBook Google+



ملخص العوامل المختصة بالبتات المفردة Bitwise Operators
تختص هذه العوامل بإجراء العمليات الحسابية على مستوى البت للمتغير . يوج 6 عوامل شائعة الاستخدام هى:
  • العامل الخاص بالعملية المنطقية "و" AND ويرمز له بالرمز "&" .
  • العامل الخاص بالعملية المنطقية "أو" OR ويرمز له بالرمز "|" .
  • العامل الخاص بالعملية المنطقية "أو الحصرية أو المنفردة" XOR ويرمز له بالرمز "^" .
  • العامل المختص بالعملية المنطقية " النفى أو المعكوس " NOT ويرمز له بالرمز "~" .
  • العامل المختص بعملية "الإزاحة جهة اليسار" ويرمز له بالرمز "<<" .
  • العامل المختص بعملية "الإزاحة جهة اليمين" ويرمز له بالرمز ">>" .

تستخدم هذه العوامل فقك بين "الإعداد الصحيحة" . يقوم كل عامل بإجراء الحساب على أساس مجموعة من القواعد المنطقية . سوف نتناول كل عامل بشىء من التفصيل .

العامل AND (&) :
هذا العامل يعمل تبعا للقاعدة :
"إذا كان كل من الدخلين بواحد , فإن نتيجة الخرج تكون بواحد وإلا كان الخرج بصفر" .
مثال توضيحى :



0 0 1 1 Operand1
0 1 0 1 Operand2
-------
0 0 0 1 (Operand1 & Operand2)



المتغير من النوع int (عدد صحيح) ذو قيمة مكونة من 16 بت وبالتالى فإن استخدام العمل & بين تعبيرين لمتغيرين من نوع int يتسبب فى إجراء 16 عملية AND فى نفس الوقت كما فى المثال التالى :



int x = 77; //binary: 0000000001001101
int y = 121; //binary: 0000000001111001
int z = x & y; //result: 0000000001001001
Or
77 & 121 = 73




العامل OR ( | ) :
"إذا كان كل من أو كلا المدخلين بواحد , فإن النتيجة تكون بواحد وإلا كانت بصفر " .
مثال :

0 0 1 1 Operand1
0 1 0 1 Operand2
-------
0 1 1 1 (Operand1 | Operand2)



العامل XOR (^) :
" إذا كان واحد فقط من المداخل بواحد , عندئذ يكون الخرج بواحد . ولإذا كا كلا الدخلين بواحد عندئذ يكون الخرج بصفر " .
مثال :

0 0 1 1 Operand1
0 1 0 1 Operand2
-------
0 1 1 0 (Operand1 ^ Operand2)



العامل NOT (~) :
هذا العامل يطبق على معامل مفرد من جهة اليمين .
" الخرج يصبح معكوس الدخل " .
مثال :

0 0 1 1 Operand1
-------
1 1 0 0 ~Operand1


عامل الإزاحة جهة اليسار (<<) وعامل الإزاحة جهة اليمين (>>) :
تقوم هذه العوامل بتحريك (زحزحة) جميع بتات العدد الصحيح إلى اليسار أو إلى اليمين بعدد من البتات يتحدد على يمين المعامل .

variable << number_of_bits
مثال :


byte x = 9 ; // binary: 00001001
byte y = x << 3; // binary: 01001000 (or 72 dec)



أى بتات تزاح من نهاية الصف تفقد إلى الأبد . يمكنك استخدم إزاحة الخانة جهة اليسار لضرب عدد فى مضاعفات (قوة) العدد 2 واستخدام إزاحة الخانة جهة اليمين فى القسمة على مضاعفات العدد 2 .

اعلانات
إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 09:10 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2024