[javascript] 비트 연산 사용 예시

JavaScript에서는 비트 연산자를 사용하여 비트 수준의 연산을 할 수 있습니다. 이러한 연산은 주로 하드웨어 레벨 프로그래밍이나 데이터 압축 알고리즘에서 유용하게 사용됩니다.

비트 AND(&) 연산자

비트 AND(&) 연산자는 두 개의 비트를 비교하여 둘 다 1인 경우에만 결과로 1을 반환합니다. 예제 코드는 다음과 같습니다.

let num1 = 5; // 이진수 0101
let num2 = 3; // 이진수 0011
let result = num1 & num2; // 결과: 0001 (십진수 1)
console.log(result);

비트 OR(|) 연산자

비트 OR( ) 연산자는 두 개의 비트를 비교하여 둘 중 하나라도 1인 경우에 1을 반환합니다. 예제 코드는 다음과 같습니다.
let num1 = 5; // 이진수 0101
let num2 = 3; // 이진수 0011
let result = num1 | num2; // 결과: 0111 (십진수 7)
console.log(result);

비트 XOR(^) 연산자

비트 XOR(^) 연산자는 두 개의 비트를 비교하여 둘 중 하나만 1인 경우에만 1을 반환합니다. 예제 코드는 다음과 같습니다.

let num1 = 5; // 이진수 0101
let num2 = 3; // 이진수 0011
let result = num1 ^ num2; // 결과: 0110 (십진수 6)
console.log(result);

비트 시프트(«, ») 연산자

비트 시프트 연산자는 이진수로 표현된 값의 비트를 왼쪽이나 오른쪽으로 이동시킵니다. 예제 코드는 다음과 같습니다.

let num = 5; // 이진수 0101
let result1 = num << 1; // 결과: 1010 (십진수 10, 왼쪽으로 1비트 시프트)
let result2 = num >> 1; // 결과: 0010 (십진수 2, 오른쪽으로 1비트 시프트)
console.log(result1, result2);

비트 연산자는 JavaScript에서 데이터를 효율적으로 조작하고, 특정 비트 수준의 연산을 수행하는 데 유용한 도구입니다.

참고: MDN Web Docs - Bitwise Operators