⊙和&有什么区别?

如题所述

1、⊙是同或运算符

其运算法则为a同或b=ab+a‘b’(a'为非a)。

真“同或”假的结果是假,假“同或”真的结果也是假,真“同或”真的结果是真,假“同或”假的结果是真。就是说两个值相同,则同或结果为真。反之,为假。——简称同真,异假。即,同或:相同为一,不同为零。

同或真值表如下:

2、&是与运算符 

1&1=1,1&0=0,0&1=0,0&0=0,相当于乘法,又叫逻辑乘。

即:两位同时为“1”,结果才为“1”,否则为0。

例如:3&5即 0000 0011 & 0000 0101 = 0000 0001因此,3&5的值得1。

3、⊕是异或运算符

计算机符号为“xor”。其运算法则为:a⊕b = (¬a ∧ b) ∨ (a ∧¬b)。

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

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

扩展资料

一、同或有交换律和结合律:

1、a ⊙ b = b ⊙ a

2、 (a ⊙ b) ⊙ c = a ⊙ (b ⊙ c)

二、对于多个输入的同或可以这样理解:

1、a ⊙ 1 = a

2、a⊙ 0⊙ 0 = a

即a与任意个1或偶数个0的同或,结果是a本身。

例如:

1⊙ 1⊙ 0⊙ 1⊙ 0⊙ 0

根据交换律,可以把输入中的 1 全部向右靠在一起得:0⊙ 0⊙ 0⊙ 1 ⊙1⊙ 1

然后根据结合律得:0⊙ 0⊙ 0⊙ (1⊙1⊙ 1)

消去所有 1得0⊙ 0⊙ 0

参考资料来源:百度百科-异或

参考资料来源:百度百科-与

参考资料来源:百度百科-同或

温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜