ตัวดำเนินการระดับบิตทำงานบนบิต (เช่น กับค่าไบนารีของตัวถูกดำเนินการ)
| ตัวดำเนินการ | คำอธิบาย |
|---|---|
| & | ระดับบิตและ |
| | | ระดับบิตหรือ |
| ^ | XOR ระดับบิต |
| << | เลื่อนซ้าย |
| >> | เลื่อนขวา |
| - | ส่วนเติมเต็ม |
| ระดับบิตและ | ||
|---|---|---|
| ก | b | a &b |
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
| ระดับบิตหรือ | ||
|---|---|---|
| ก | b | ก | ข |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
| Bitwise XOR | ||
|---|---|---|
| ก | b | a ^ b |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |

ตัวอย่าง
ต่อไปนี้เป็นโปรแกรม C สำหรับการบวกและคูณด้วย 2 โดยใช้ตัวดำเนินการระดับบิต -
#include<stdio.h>
main(){
int a;
printf("Enter a\n");
scanf("%d",&a);
printf("%d*2=%d \n",a,a<<1);
printf("%d/2=%d \n",a,a>>1);
} ผลลัพธ์
เมื่อโปรแกรมข้างต้นทำงาน มันจะสร้างผลลัพธ์ต่อไปนี้ -
Run 1: Enter a 45 45*2=90 45/2=22 Run 2: Enter a 65 65*2=130 65/2=32