liam0205.github.io
liam0205.github.io copied to clipboard
取得一个整型变量二进制表示的最后一个「1」 | 始终
https://liam.page/2015/10/02/how-to-get-the-last-1-bit-of-an-integer/
在实际工作中,我需要取得一个整数二进制表示的最后一个「1」在哪里。 最朴素的办法,是用短除法,逐次取余数。高明一点的办法,可以是将目标整数向右逐次右移 1 位,然后与常数 1 按位取与,结合计数器判断「1」的位置。 这里,我们介绍一个更加「聪明」的办法。
写的真好