PHP/포스팅

[PHP] 비트 연산자

짜집퍼박사(짜박) 2024. 4. 26. 01:04

PHP에서 비트 연산자는 이진수로 표현된 숫자의 각 비트(bit)를 조작하는 데 사용됩니다. 이진수는 0과 1로만 표현되며, 각 비트는 숫자의 특정 자릿수를 나타냅니다.

 

 

1. AND 비트 연산자 (&)
두 이진수의 각 비트를 AND 연산합니다. 두 비트가 모두 1일 때 결과는 1이 되며, 그 외의 경우에는 0이 됩니다.

 

2. OR 비트 연산자 (|):
두 이진수의 각 비트를 OR 연산합니다. 하나 이상의 비트가 1이면 결과는 1이 되며, 두 비트가 모두 0일 때만 결과가 0이 됩니다.

 

3. XOR 비트 연산자 (^):
두 이진수의 각 비트를 XOR(배타적 논리합) 연산합니다. 두 비트가 다를 때 결과는 1이 되며, 같을 때는 결과가 0이 됩니다.

 

4. NOT 비트 연산자 (~):
단항 연산자로, 이진수의 각 비트를 반전시킵니다. 0은 1로, 1은 0으로 변환됩니다.

 

5. 왼쪽 시프트 연산자 (<<):
이진수를 왼쪽으로 지정된 비트 수만큼 이동시킵니다. 오른쪽에 0으로 채워집니다.

 

6. 오른쪽 시프트 연산자 (>>):
이진수를 오른쪽으로 지정된 비트 수만큼 이동시킵니다. 왼쪽에는 부호 비트와 동일한 비트로 채워집니다(양수인 경우에는 0, 음수인 경우에는 1).

 

PHP 비트 연산자는 주로 비트 수준에서의 연산을 수행하고, 이진수 표현을 사용하여 데이터를 처리하는 데 사용됩니다. 이를 통해 데이터를 압축하거나 특정 비트를 추출하는 등의 작업을 수행할 수 있습니다.

아래는 간단한 예제 코드입니다.

$a = 5; // 00000101
$b = 3; // 00000011

// AND 연산
$result = $a & $b; // 00000001
echo "AND 연산 결과: " . $result . "\n";

// OR 연산
$result = $a | $b; // 00000111
echo "OR 연산 결과: " . $result . "\n";

// XOR 연산
$result = $a ^ $b; // 00000110
echo "XOR 연산 결과: " . $result . "\n";

// NOT 연산
$result = ~$a; // 11111010
echo "NOT 연산 결과: " . $result . "\n";

// 왼쪽 시프트 연산
$result = $a << 1; // 00001010
echo "왼쪽 시프트 연산 결과: " . $result . "\n";

// 오른쪽 시프트 연산
$result = $a >> 1; // 00000010
echo "오른쪽 시프트 연산 결과: " . $result . "\n";

이 코드는 주어진 두 숫자의 이진 표현을 사용하여 각 비트 연산자에 대한 결과를 출력합니다.

 

With ChatGPT

'PHP > 포스팅' 카테고리의 다른 글

[PHP] 삼항 조건 연산자  (0) 2024.04.28
[PHP] 일치 비교 연산자  (0) 2024.04.28
[PHP] 논리 연산자  (0) 2024.04.26
[PHP] 대입 연산자  (0) 2024.04.25
[PHP] 비교 연산자  (0) 2024.04.22