与、或、异或、同或的区别是什么?

如题所述

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

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

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

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

温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-06-25
1、运算规则不同:异或如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同。异其运算法则相当于不带进位的二进制加法:二卖洞进制下用1表示真,0表示假,则异或的运算法则为:0_0=0,1_0=1,0_1=1,1_1=0(同为0,异为1),这些法则与加法是相同的,只是不带进位,所以异或常被认作不进位加法。2、功能不同:按位或其功能是参与运算的两数各对应的二进位相或。异或结果为0。或只要对应的二个二进位有一个为1时,结果位就为1。当参与运算的是负数时,参与两个数均以补码出现。3、运算符不同:按位或在C语言中用a|b表示。按位异或在C语言中用a^b来表示。扩展资料:位运算相关规则:1、整数在计算机中用二进制的位来表示,C语言提供一些运算符可以直接操作整数中姿枯中的位,称为位运算,这些运算符的操作数都必须是整型的。2、1&1=1,1|1=1,1^1=03、1&0=0,1|0=[tele.xgzwlkj.cn/article/210843.html]
[tele.hao123ml.cn/article/320657.html]
[tele.str3.cn/article/374506.html]
[tele.waeqm.cn/article/185340.html]
[tele.str3.cn/article/724830.html]
[tele.waeqm.cn/article/129508.html]
[tele.sinhtech.cn/article/953480.html]
[tele.jchdmc.cn/article/704812.html]
[tele.jnjiank.cn/article/403281.html]
[tele.jchdmc.cn/article/473625.html]
相似回答
大家正在搜