เลื่อนซ้าย
ในโอเปอเรเตอร์ shift ซ้าย ค่าตัวถูกดำเนินการทางซ้ายจะถูกย้ายไปทางซ้ายตามจำนวนบิตที่ระบุโดยตัวถูกดำเนินการทางขวา
นี่คือตัวอย่างของตัวดำเนินการ shift ซ้ายในภาษา C
ตัวอย่าง
#include <stdio.h>
int main() {
int y = 28; // 11100
int i = 0;
for(i;i<=3;++i)
printf("Left shift by %d: %d\n", i, y<<i);
return 0;
} ผลลัพธ์
นี่คือผลลัพธ์
Left shift by 0: 28 Left shift by 1: 56 Left shift by 2: 112 Left shift by 3: 224
เลื่อนขวา
ในโอเปอเรเตอร์ shift ทางขวา ค่าตัวถูกดำเนินการทางซ้ายจะถูกย้ายไปทางขวาตามจำนวนบิตที่ระบุโดยตัวถูกดำเนินการทางขวา
นี่คือตัวอย่างของตัวดำเนินการกะทางขวาในภาษา C
ตัวอย่าง
#include <stdio.h>
int main() {
int x = 10; // 1010
int i = 0;
for(i;i<2;i++)
printf("Right shift by %d: %d\n", i, x>>i);
return 0;
} ผลลัพธ์
นี่คือผลลัพธ์
Right shift by 0: 10 Right shift by 1: 5