bit操作 转

http://www.catonmat.net/blog/low-level-bit-hacks-you-absolutely-must-know/

Bit Hack #6. Turn off the rightmost 1-bit.

y = x & (x-1)

Bit Hack #7. Isolate the rightmost 1-bit.

y = x & (-x)

Bit Hack #8. Right propagate the rightmost 1-bit.

y = x | (x-1)

Bit Hack #9. Isolate the rightmost 0-bit.

y = ~x & (x+1)

Bit Hack #10. Turn on the rightmost 0-bit.

y = x | (x+1)

x y differ only 1 bit
dif = x^y
return dif && !( dif & (dif-1) )



原文地址:https://www.cnblogs.com/huashiyiqike/p/4337284.html