异或和同或互为什么?

如题所述

同或和异或互为非运算。

异或(xor),是一个数学运算符。它应用于逻辑运算。异或的数学符号为“e”,计算机符号为“xor"。如果ab两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。其运算法则为:逻辑表达式: F=ABAB ( (ABAB)ABAB’,为“同或”运算)a田b =(7a ^ b) v (a ^b)运算法则:

1、a+a= 0

2、a+b=b+a

3、a+b+c=a+(+c)= (a+b)+ c:

4、d=a+b出c可以推出 a=d+b+c

5、a+b+a=b.

6、若x是二进制数0101,y是二进制数1011;

则x+y=1110

只有在两个比较的位不同时其结果是1,否则结果为0

即“两个输入相同时为0,不同则为1”!

同或(XNOR),电路表示则为同或门,双输入若相同则输出为1,不同则输出为0!例如: 1 xnor 1=1;1 xnor 0=0;0 xnor 0=1;

词汇释义:

“同或”是一个数学运算符,应用于逻辑运算。 其运算法则为a同或b=ab+a‘b’(a'为非a)。

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

巧用:

与其它语言不同,C语言和C++语言(C++支持xor,用法和效果如相同)的异或不用xor,而是用“”,键入方式为Shift+6.(而其它语言的“^”一般表示乘方)

若需要交换两个变量的值,除了通常使用的借用中间变量进行交换外,还可以利用异或,仅使用两个变量进行交换

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