Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript 비트 NOT 연산자(~)란 무엇이고 어떻게 사용할까?

JavaScript 비트 NOT 연산자(~)란?

비트 NOT 연산자(~)는 단항 연산자(unary operator)입니다. 하나의 피연산자만을 대상으로 하며, 해당 값의 모든 비트를 반전시키는 방식으로 동작합니다. 즉, 0인 비트는 1로, 1인 비트는 0으로 뒤집습니다.

수식으로 표현하면 다음과 같은 관계가 성립합니다.

~x = -(x + 1)

예를 들어 숫자 3의 32비트 이진 표현은 ...00000011입니다. 모든 비트를 반전하면 ...11111100이 되고, 이는 2의 보수(two's complement) 표현에서 -4에 해당합니다.

예제

아래 코드를 실행하면 비트 NOT 연산자(~)가 실제로 어떻게 동작하는지 확인할 수 있습니다.

<html>
   <body>
      <script>
         var b = 3; // 비트 표현: 00000011

         document.write("(~b) => ");
         result = (~b);
         document.write(result); // 출력: -4
      </script>
   </body>
</html>

실행 결과

(~b) => -4

정리

  • ~는 단항 연산자로, 피연산자의 모든 비트를 반전시킵니다.
  • 결과는 항상 -(피연산자 + 1)과 같습니다.
  • 예: ~3-4, ~0-1