如何通过位运算符^实现按位异或操作?
- 内容介绍
- 文章标签
- 相关推荐
本文共计494个文字,预计阅读时间需要2分钟。
位操作是程序设计中针对位模式对整数进行单一位和二进位操作的一种元素。在许多古老的老式微处理器上,位运算比加减运算要快,并且通常位运算比乘除法运算要快得多。在现代架构中,位运算的执行速度仍然很快。
位操作是程序设计中对位模式按位或二进制数的一元和二元操作。在许多古老的微处理器上,位运算比加减运算略快, 通常位运算比乘除法运算要快很多。在现代架构中,位运算的运算速度通常与加法运算相同(仍然快于乘法运算)。^:按位异或。将值转化为二进制后进行比较,相同位置只要有一个为1则该位置结果为1,否则为0。举例如下:
$a=1;//二进制为00001 $b=2;//二进制为00010 echo $a^$b;// 00011 就是3,因此输出3
&:按位与。将值转化为二进制后进行比较,相同位置只有两个全为1则该位置结果为1,否则为0。举例如下:
$a=1;//二进制为00001 $b=2;//二进制为00010 $c=3;//二进制为00011 echo $a&$b;// 00000 就是0,因此输出0 echo $a&$c;// 00001 就是1,因此输出1 echo $b&$c;// 00010 就是2,因此输出2
按位&后返回值主要是用来判断$a 是否存在于 $c,因此权限用法比较多。
本文共计494个文字,预计阅读时间需要2分钟。
位操作是程序设计中针对位模式对整数进行单一位和二进位操作的一种元素。在许多古老的老式微处理器上,位运算比加减运算要快,并且通常位运算比乘除法运算要快得多。在现代架构中,位运算的执行速度仍然很快。
位操作是程序设计中对位模式按位或二进制数的一元和二元操作。在许多古老的微处理器上,位运算比加减运算略快, 通常位运算比乘除法运算要快很多。在现代架构中,位运算的运算速度通常与加法运算相同(仍然快于乘法运算)。^:按位异或。将值转化为二进制后进行比较,相同位置只要有一个为1则该位置结果为1,否则为0。举例如下:
$a=1;//二进制为00001 $b=2;//二进制为00010 echo $a^$b;// 00011 就是3,因此输出3
&:按位与。将值转化为二进制后进行比较,相同位置只有两个全为1则该位置结果为1,否则为0。举例如下:
$a=1;//二进制为00001 $b=2;//二进制为00010 $c=3;//二进制为00011 echo $a&$b;// 00000 就是0,因此输出0 echo $a&$c;// 00001 就是1,因此输出1 echo $b&$c;// 00010 就是2,因此输出2
按位&后返回值主要是用来判断$a 是否存在于 $c,因此权限用法比较多。

