异或
作者:互联网
1 (1)使特定位翻转 2 3 假设有01111010,想使其低4位翻转,即1变为0,0变为1。可以将它与00001111进行∧运算,即 4 5 6 7 结果值的低4位正好是原数低4位的翻转。要使哪几位翻转就将与其∧运算的该几位置为1即可。这是因为原数中值为1的位与1进行∧运算得0,原数中的位值0与1进行∧运算的结果得1。 8 9 10 快速判断两个值是否相等 11 举例1: 判断两个整数a,b是否相等,则可通过下列语句实现: 12 return ((a ^ b)==0) 13 14 2.与0异或,保留原值。如012异或00=012. 15 3.交换两个值,不用临时变量。假如a=3,b=4。想将a和b的值互换,可以用以下赋值语句实现: 16 a=a异或b; 17 b=b异或a; 18 a=a异或b; 19 20 21 1. a ⊕ a = 0 22 2. a ⊕ b = b ⊕ a 23 3. a ⊕b ⊕ c = a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c; 24 4. d = a ⊕ b ⊕ c 可以推出 a = d ⊕ b ⊕ c. 25 5. a ⊕ b ⊕ a = b. 26 6.若x是二进制数0101,y是二进制数1011; 27 则x⊕y=1110 28 只有在两个比较的位不同时其结果是1,否则结果为0 29 即“两个输入相同时为0,不同则为1”!
标签:两个,运算,异或,原数,012,翻转 来源: https://www.cnblogs.com/tingtin/p/10545669.html