0 < res <= (1 << 31) -1 - 这是什么意思?

梅丽莎·斯图尔特

此语句检查数字是否为 32 位。

0 < res <= (1 << 31) -1

我似乎无法理解如何,有人可以帮助理解这种位移语法吗?

弗兰克

好吧,让我们从一个例子开始:

二进制中的 1 是 1

二进制中的 2 是 10

二进制中的 4 是 100

我们可以看到,我们需要在每个数字的末尾“添加”一个 0 才能乘以 2,并且在大多数语言中,我们可以使用以下语法来做到这一点:number << 1这里我们说的是向左侧添加 1乘以0。number >> 1在这里,我们在右侧添加 1 次 0。

所以1 << 31意味着 1 * 2 * 2 * 2 ... 31 次,这意味着 2^31(所以 32 位)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

IntValue ?? 0 == -1?“-”:“ +”是什么意思?

MEth0 / 0/1是什么意思?

(x ^ 0x1)!= 0是什么意思?

这是什么意思return($ var&1);

Laravel:take(1)-> count(); 这是什么意思?

单元格(1)-这是什么意思

SQL 语法 1.* 这是什么意思?

这是什么意思“向量增加到1”?

&(0,1)在颠簸转换中是什么意思?

data[:,0] 或 data[:,1] 在熊猫中是什么意思

Golang中的0x1是什么意思?

这行代码是什么意思*((int *)(0))= 1 ;?

[-1:0] 在 Verilog 中是什么意思?

为什么2 **(1 << 31)== 0?

1 <&-&是什么意思?

* -1是什么意思?

++ 1是什么意思

在clingo / ASP中1 <0和1 = -1是什么意思?

ghc的FUN_1_0,FUN_0_1等封闭类型是什么意思?

线程“main”中的异常java.lang.ArrayIndexOutOfBoundsException:索引1超出长度0的界限,不知道这是什么意思或如何修复它

“偏移量或计数可能接近-1 >>> 1。” 这是什么意思

rsync和xfr#1,to-chk = 0/1,它们是什么意思?

函数范围(len(sequence)-1,0,-1)中的数字是什么意思?

“[0;31m”是什么意思?

R mstate 包采用具有“状态”变量的数据。“状态”可以是 0 或 1。0 是什么意思,1 是什么意思?

为什么让y = 1 + y编译,这是什么意思?

plt.plot(x[0:-1],y/y[0]) 是什么意思?

bugcheckcode 0x122的parameter1 0x4是什么意思?

这是什么意思:“您没有/ dev / ttyACM1设备的权限!”?