品牌型网站建设,文创设计网站,北京建设规划许可证网站,盘锦做网站哪家好我们复习一下位运算#xff0c;这里介绍一下( ,|, ^)的用途。
按位与 ------------ 规则#xff1a; 000 010 10 0 111 #xff08; 两位为1#xff0c;才是1#xff09;作用#xff1a; 清零与保位。通常用来将特定的位清零这里介绍一下( ,|, ^)的用途。
按位与 ------------
规则 000 010 10 0 111 两位为1才是1作用 清零与保位。通常用来将特定的位清零其他位保持不变。比如00101011 我们希望将此数的7,8位请零其它位保持不变则只需与如下数字做运算。0 0 1 0 1 0 1 11 1 1 1 1 1 0 0 0 0 1 0 1 0 0 0技巧 清零清哪位就令哪位为0保位保哪位就令哪位为1按位或 ------------| 规则 0|00 0|11 1|0 1 1|11 有一位为1,则为1 作用 设位。通常用来将特定的位设为1其它保持不变。 比如 将00110000后四位设为1. 则 0 0 1 1 0 0 0 0 | 0 0 0 0 1 1 1 1 0 0 1 1 1 1 1 1 技巧 想设哪位为1则设为1其它为0 按位异或 -----------^ 规则 0^00 0^11 1^0 1 1^10 相同为0,不同则为1 作用 1. 使特定位翻转 假设有01111010想使其低四位翻转即1变为0,0变为1.可以使其与00001111进行^运算即 0 1 1 1 1 0 1 0 ^ 0 0 0 0 1 1 1 1 0 1 1 1 0 1 0 1 要使哪几位翻转就将与其进行^运算的该几位置为1即可。 2.与0异或保持原值 例如 012^00012 0 0 0 0 1 0 1 0 ^ 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 3. 与自身异或设为0 例如012^01200 0 0 0 0 1 0 1 0 ^ 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 4.交换两个值不用临时变量 aa^b; bb^a; aa^b;