Python Language ビット単位の右シフト


>>演算子は、ビットごとの "右シフト"を実行します。ここで、左のオペランドの値は、右のオペランドによって与えられたビット数だけ右に移動します。

# 8 = 0b1000
8 >> 2
# Out: 2
# 2 = 0b10

bin(8 >> 2)
# Out: 0b10

1右ビットシフトを実行することは、 2による整数除算に相当します。

36 >> 1
# Out: 18

15 >> 1
# Out: 7

n右ビットシフトを実行することは、整数除算を2**nと等価にします。

48 >> 4
# Out: 3

59 >> 3
# Out: 7