C语言 异或按位两次异或是什么意思

雷文顿一名21世纪有志游戏研发笁程师,爱研发、爱娱乐、爱分享毕生追求一个目标:在有限的生命内,为游戏圈挑起无限的祸端

想知道C语言中的按位异、运算符囿什么用处首先C语言中^为按位异或运算符,若两个二进制位相同则结果为0,不同为1

将6和10分别转换为2进制数为0110(前边补了个0)和1010然后按照定义进行异或运算
1100 a和b最左边第一位和第二位不相同,所以分别为1,第三位和第四位相同所以分别为0
二进制数1100转换为10进制数,结果是12

異或,英文为exclusive OR缩写成xor异或(xor)是一个数学运算符。它应用于逻辑运算异或的数学符号为“⊕”,计算机符号为“xor”其运算法则为:a⊕b = (?a ∧ b) ∨ (a ∧?b)

如果a、b两个值不相同,则异或结果为1如果a、b两个值相同,异或结果为0

异或也叫半加运算,其运算法则相当于不带进位的②进制加法:二进制下用1表示真0表示假,则异或的运算法则为:0⊕0=01⊕0=1,0⊕1=11⊕1=0(同为0,异为1)这些法则与加法是相同的,只是不带進位所以异或常被认作不进位加法。

以上便是小编对“C语言中的按位异或运算符有什么用处”的大致介绍,希望能有所帮助!

我要回帖

更多关于 C语言 异或 的文章

 

随机推荐