• 位运算


    转自:http://blog.csdn.net/zmx354/article/details/19930191


    学习状态压缩 必需要先搞懂位运算  这是集中位运算的符号与其作用。

    名称
    C/C++样式 Pascal样式 简记法则
    按位与 & and 全一则一,否则为零
    按位或 | or 有一则一,否则为零
    按位取反 ~ not 是零则一,是一则零
    按位异或 ^ xor 不同则一,同样则零
    左移位 << shl a<<k等价于a*2k
    右移位 >> shr a>>k等价于a/2k
    优先级:not>and>xor>or;
     
     
    位运算的应用:
    (1) 获取一个或多个固定为的值
       如果x = 1010(10进制的10)
       我们要获取从右边第二位的值,那么我们能够这样来获取
       x&(1<<1)也就是
       x:       1010
       1<<1:         0010
       x&(1<<1):  0010
       这样我们就能够通过推断x&(1<<1)是否等于0来知道这一位是0还是1了。

       
       x&(1<<n)  就是获取第n-1位的值。 
       
    (2) 把一个或多个固定为的值置为零
       如果x = 1010(10进制的10)
       我们要把从右边第二位的值置为零。那么我们能够这样来做
       x&(~(1<<1))也就是
       x            1010
       ~(1<<1)           1101
       x&(~(1<<1)) 1000
       x&(~(1<<n))  就是把x的第n-1位变成0



  • 相关阅读:
    第七次上机练习
    第六次作业
    第六次上机练习
    第五次作业
    第五次上机练习
    第四次作业
    第四次上机练习
    第三次上机练习
    第三次作业
    第十一周上机练习
  • 原文地址:https://www.cnblogs.com/tlnshuju/p/7029235.html
Copyright © 2020-2023  润新知