Bit Operations
מחלקה אחת של אופרטורים מבצעת מניפולציות במספרים בצורה יוצאת דופן. אופרטורים אלה עובדים ברמת הסיביות. הם משמשים עבור סוגים מסוימים של משימות ברמה נמוכה, לעתים קרובות כולל הגדרה או קריאה של דגלים.
טבלה 34-5: מפעילי סיביות
תיאור המפעיל
תיאור המפעיל
~ שלילה חלקית. שלל את כל הביטים במספר.
<< שמאלה העברה סיבית. העבר את כל הביטים במספר שמאלה.
>> שינוי סיביות ימינה. העבר את כל הביטים במספר ימינה.
& Bitwise ו. בצע פעולת AND על כל הביטים בשני מספרים.
| Bitwise OR. בצע פעולת OR על כל הביטים בשני מספרים.
^ Bitwise XOR. בצע פעולת OR בלעדית על כל הביטים בשני מספרים.
שים לב שיש גם אופרטורים של הקצאה מתאימים (לדוגמה, <<=) עבור הכל מלבד שלילה סיבית.
כאן נדגים הפקת רשימה של חזקות של 2, באמצעות אופרטור ההזזה השמאלי בכיוון הסיביות:
[me@linuxbox ~]$ עבור ((i=0;i<8;++i)); do echo $((1<
1
2
4
8
16
32
64
128
[me@linuxbox ~]$ עבור ((i=0;i<8;++i)); do echo $((1<
1
2
4
8
16
32
64
128