>  기사  >  백엔드 개발  >  비트 연산자에서 ^ 및 &를 사용하는 방법

비트 연산자에서 ^ 및 &를 사용하는 방법

醉折花枝作酒筹
醉折花枝作酒筹앞으로
2021-07-26 16:17:322555검색

비트 연산은 프로그래밍에서 비트 패턴의 비트 단위 또는 이진수에 대한 단항 및 이진 연산입니다. 많은 구형 마이크로프로세서에서 비트 연산은 덧셈과 뺄셈보다 약간 빠르며, 일반적으로 비트 연산은 곱셈과 나눗셈보다 훨씬 빠릅니다. 현대 아키텍처에서 비트 연산은 종종 덧셈과 동일한 속도로 작동합니다(곱셈보다 여전히 빠릅니다).

비트 연산자에서 ^ 및 &를 사용하는 방법

^: 비트별 XOR. 값을 바이너리로 변환하여 비교합니다. 동일한 위치 중 하나가 1이면 해당 위치의 결과는 1이고 그렇지 않으면 0입니다. 예는 다음과 같습니다:

$a=1;//二进制为00001
$b=2;//二进制为00010
echo $a^$b;// 00011 就是3,因此输出3

&: 비트 AND. 값을 바이너리로 변환하여 비교합니다. 동일한 위치 중 두 개만 모두 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에 존재하는지 확인하는 데 사용되므로 권한 용도가 많습니다. 예를 들어

$my_privilege = 15; // 1+2+4+8 拥有全部权限
$Pri = '';
$privilege_arr = array(8=>'增', 4=>'删',2=>'改',1=>'查');
foreach($privilege_arr as $k =>$v){
    $k & $my_privilege && $Pri .= &#39;我有&#39;.$v.&#39;的权力<br>&#39;;
}
echo $Pri;//输出结果

에서는 다음 학습을 권장합니다. php 비디오 튜토리얼

위 내용은 비트 연산자에서 ^ 및 &를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제