提取整数的最右边的N位

提取整数的最右边的N位,第1张

提取整数的最右边的N位

让我们以N = 3为例。以二进制形式

1<<3 == 0b1000
。这样
1<<3 - 1 == 0b111

通常,

1<<N - 1
以二进制形式创建带有N个数字的数字。

R = 1<<N-1
。然后,表达式变为
(K&R) == R
。所述
K&R
提取的最后N个比特,例如:

     101001010  &        111  ————————————      000000010

(回想一下,当且仅当两个 *** 作数在该数字中都为1时,按位与运算符才会在该数字中返回1。)

当且仅当最后N位全为1时,等式成立。因此,表达式检查K是否以N结尾。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4912318.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存