异或运算符号,c语言位运算符的用法

说明

一.异或运算概要

异或是指异或。 异或(xor )是数学运算符。 适用于逻辑运算。 异或的数学符号是“”,计算机符号是“xor”。 其算法如下

(ab=(ab ) () ab ) ) ) ) ) ) ) ) ) )

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

异或也称为半加法运算,其运算法则相当于没有进位的二进制数的加法。 如果用二进制数表示真,用1表示假,则异或运算法则为00=0、10=1、01=1、11=00。 这些规律和加法一样

异或简称为XOR、EOR、EX-OR

程序有XOR、XOR、三种运算符。

使用方法如下

z=xy

z=xxory

二.异或定律

1.aa=0

2.ab=ba

3.abc=ac () bc )=(ab ) c;

4.d=abc可发售a=dbc。

5.aba=b。

6.x为二进制0101、y为二进制1011时;

xy=1110

只有在比较的两个比特不同的情况下,结果为1,否则结果为0

也就是说,“两个输入相同时为0,不同时为1”!

三.异或运算的作用

计算机中普遍使用,异或(xor )逻辑符号一般使用xor,也有(刽子手)。

真假=真

真假真假

假=假

真真=假

或:

TrueFalse=True

FalseTrue=True

FalseFalse=False

TrueTrue=False

由于一些计算机语言用1表示真,用0表示假,所以2字节的逐位异或如下

以下是要计算异或的两个二进制值。

因为现实中使用的是十进制数字,所以让我们来看看如何对两个十进制数字进行异或运算:

(3)3=?

1 .在计算异或之前将所有数值转换为二进制。

5和3分别转换为二进制值0101,0011

2 .将结果0110转换为十进制: 6

3 .所以53=6

四. c语言异或运算

异或运算符是参与运算的两个值,如果两个对应位相同,则结果为0,否则为1。 即0^0=0、1^0=1、0^1=1、1^1=0

例如,10100001^00010001=10110000

0 ^0=0,0 ^1=1可以理解为0与任意数异或,结果=任意数

1 ^0=1,1 ^1=0可以理解为1与任意数异或,结果=任意数相反

任何异或都等于让自己为0

1 )异或可以用于反转特定位,如对数10100001的第一位和第二位。 可以用异或运算数和00000110。

10100001^00000110=10100111

以十六进制表示,0xA1^0x06=0xA7

(2)异或运算允许在不使用临时变量的情况下交换两个值。 例如,要交换两个整数a、b的值,请使用以下语句:

a=10100001,b=00000110

a=a^b; //a=10100111

b=b^a; //b=10100001

a=a^b; //a=00000110

)3)异或运算符的特征是,即使对数a相同的数b(a=a^b^b )进行两次异或,仍然是原来的值a。

打开APP阅读更多精彩内容

点击阅读全文

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注