解释一个bithift赋值

时间:2018-04-28 19:00:11

标签: javascript java

我对这段代码有疑问,有人可以为我解决这个问题吗?

a=32, b=0xE

我需要解释"案例2":

case 2: b>>=(a>>5); break;

2 个答案:

答案 0 :(得分:2)

首先,0xE14的十六进制表示法现在根据您的问题 b >>= (a>>5)a = 32; b = 14; 使用右移运算符(>>) b = b >> (a >> 5) 然后 b = 14 >> (32 >> 5) 然后 b = 14 >> 1 然后 b = 7

答案 1 :(得分:1)

case 2是分配的按位移位。

b >>= (a>>5);

b = b >> (a >> 5);

<强>是

b = b >> (a / 2 / 2 / 2 / 2 / 2);

您可以将a的右移扩展到2除以。