按位移位的用法

问题描述

我可以很好地理解位移位的工作原理,但我找不到任何可以使用它来获得更快/更好结果的情况。 有人能解释一下什么时候使用运算符 >><< 有用吗?

x = 2
y = 7
z = 16

a = x << y
print(bin(x),"with %d zeros removed from left/added on right ->" % y,bin(a))

b = z >> x
print(bin(z),"with %d zeros removed from right/added on left ->" % x,bin(b))

解决方法

不太确定它在通常的编码中在哪里有用。但是当涉及到嵌入式编程时,这有很大的用途。为了操作寄存器,我经常使用按位运算符。