位运算学习

来源:互联网 发布:个性的淘宝店铺名字 编辑:程序博客网 时间:2024/05/16 11:26
    去掉最后一位          | (101101->10110)           | x >> 1      在最后加一个0         | (101101->1011010)         | x << 1      在最后加一个1         | (101101->1011011)         | (x << 1) + 1      把最后一位变成1       | (101100->101101)          | x | 1      把最后一位变成0       | (101101->101100)          | (x | 1)-1      最后一位取反          | (101101->101100)          | x ^ 1      把右数第k位变成1      | (101001->101101,k=3)      | x | (1 << (k-1))      把右数第k位变成0      | (101101->101001,k=3)      | x&(~(1 << (k-1))      右数第k位取反         | (101001->101101,k=3)      | x ^ (1 << (k-1))      取末三位              | (1101101->101)            | x & 7      取末k位               | (1101101->1101,k=5)       | x & (1 << (k-1))      取右数第k位           | (1101101->1,k=4)          | (x >> (k-1)) & 1      把末k位变成1          | (101001->101111,k=4)      | x | (1 << (k-1))      末k位取反             | (101001->100110,k=4)      | x ^ (1 << (k-1))      把右边连续的1变成0    | (100101111->100100000)    | x & (x+1)      把右起第一个0变成1    | (100101111->100111111)    | x | (x+1)      把右边连续的0变成1    | (11011000->11011111)      | x | (x-1)      取右边连续的1         | (100101111->1111)         | (x ^ (x+1)) >> 1      去掉右起第一个1的左边 | (100101000->1000)         | x & (x ^ (x-1))  


原创粉丝点击