비트 연산자는 말그대로 0과 1로 이루어진 2진수를 가지고 연산을 합니다.

예 제 설 명 결 과
$a & $b AND 두 비트가 모두 1인 값을 반환
$a | $b OR 두 비트 중 하나라도 1이면 1를 반환
$a ^ $b XOR 두 비트가 다를 때 1를 반환
~$a NOT 비트 NOT 연산자, 비트 뒤집기
$a << $b Shilft Left $a 를 왼쪽으로 $b 만큼 이동
$a >> $b Shift Right $a 를 오른쪽으로 $b 만큼 이동


AND 연산자

주어진 비트 중 두 비트가 모두 1이라면 참입니다.


<?php
   echo 10 & 24; // 결과: 8 
 ?>


OR 연산자

주어진 비트 중 하나라도 1이면 참으로 합니다.


<?php
   echo 10 | 24; // 결과: 26 
 ?>


XOR 연산자

주어진 비트 중 두 비트가 다른 값을 반환합니다.


<?php
 echo 10 ^ 24; // 결과: 18 
 ?>


NOT 연산자

비트 NOT 연산자는 1를 0으로 0을 1로 바꾸는 것으로 "비트 뒤집기" 또는 "비트 반전"이라고 부릅니다.


<?php
 echo ~10; // 결과: -11 

 echo ~100; // 결과: -101

 echo ~50; // 결과: -51

 echo ~25; // 결과: -26
 ?>


Shift Left 연산자

주어진 값 만큼 왼쪽으로 비트를 이동하는 연산자입니다. 각 단계는 2로 곱하기를 의미합니다.


<?php
 echo 10 << 1; // 결과: 20 
 ?>


Shift Right 연산자

주어진 값 만큼 오른쪽으로 비트를 이동하는 연산자입니다. 각 단계는 2로 나누기를 의미합니다.


<?php
 echo 10 >> 1; // 결과: 5
 ?>

0 댓글