Python/bitwise operations
< Python
يمكن تنفيذ عمليات الأعداد الثنائية Bitwise على الأعداد الصحيحة فقط، وتعامل الأعداد السالبة معاملة قيمها المكمّلة من الأساس 2 (يُفترض هنا وجود عدد كافٍ من البتات لكي لا يحدث أي فيضان (overflow) أثناء العملية).
تمتلك عمليات الأعداد الثنائية أولوية أدنى من العمليات العددية وأعلى من عمليات المقارنة، ويمتلك العامل الأحادي~
نفس الأولوية التي تمتلكها العمليات العددية الأحادية (+
و -
).
يعرض الجدول التالي قائمة بعمليات الأعداد الثنائية مرتّبة حسب أولويتها ترتيبًا تصاعديًا:
العملية | النتيجة | ملاحظات |
---|---|---|
x | y
|
x أو y
|
|
x ^ y
|
x أو (غير الضمنية) y
|
|
x & y
|
x و y
|
|
x << n
|
إزاحة x إلى اليسار بمقدار n بت | الإزاحة السالبة غير مسموح بها، وتؤدي إلى إطلاق خطأ من نوع ValueError .
الإزاحة إلى اليسار بمقدار |
x >> n
|
إزاحة x إلى اليمين بمقدار n بت | الإزاحة السالبة غير مسموح بها، وتؤدي إلى إطلاق خطأ من نوع ValueError .
الإزاحة إلى اليسار بمقدار |
~x
|
قلب بتات x |
مصادر
- صفحة Built-in Types في توثيق بايثون الرسمي.