010PHP基础知识——运算符(三)

<?php
/**
 * 位运算符:
 * 1:&按位与:左右两边的数,同位都为1,返回是1,否则返回是0
 */
/*$a = 5;
$b = 6;
$a = decbin($a);//101   十进制转换为二进制
$b = base_convert($b, 10, 2);//110   base_convert() 函数在任意进制之间转换数字
echo $a . "<br/>" . $b;
echo "<br/>--------------------<br/>";
echo $a & $b;//100*/

/*2. | 按位或,只有当同位都为0时,返回0,否则返回1*/
/*$a = 5;
$b = 6;
$a = decbin($a);//101
$b = base_convert($b, 10, 2);//110
echo $a . "<br/>" . $b;
echo "<br/>--------------------<br/>";
echo $a | $b;//111*/

/*3.^ 按位异或  只有当同位不同时,返回1,否则返回0*/
/*$a = decbin($a);//101
$b = base_convert($b, 10, 2);//110
$a = 5;
$b = 6;
echo $a . "<br/>" . $b;
echo "<br/>--------------------<br/>";
echo decbin($a ^ $b);//11*/

//4.~ 按位非 将位中的1变成0,0变为1
/*$a = 5;
$b = 6;
echo $a . "<br/>" . $b;
echo "<br/>--------------------<br/>";
echo decbin(~ $b);//输出:11111111111111111111111111111001*/


/*位移运算符:
1.<< 左移,将左边数的二进制位左移右边数指定数量的位,右边空位补0
*/
/*$a = 5;
$a = decbin($a);//101
echo $a ;
echo "<br/>--------------------<br/>";
echo decbin($a<<1);//输出:11001010*/

//2.<< 右移,将右边数的二进制位右移左边数指定数量的位,左边空位补0
$a = 5;
$a = decbin($a);//101
echo $a ;
echo "<br/>--------------------<br/>";
echo decbin($a>>1);//输出:110010

  

原文地址:https://www.cnblogs.com/yiweiyihang/p/8116210.html