더북(TheBook)

1.3.3 비트 연산자

비트 연산자는 정수 타입의 단일 비트를 검사하거나 조작할 수 있게 해준다. 비트 연산자는 시스템 프로그래밍에서는 중요하지만, 현재 애플리케이션 개발에서는 그리 중요하지 않다. 표 1-4는 우선순위별로 나열된 모든 비트 연산자를 보여준다.

▼ 표 1-4 비트 연산자

연산

표현식

NOT(1의 보수)

~x

왼쪽 시프트

x << y

오른쪽 시프트

x >> y

비트 AND

x & y

비트 OR

x | y

비트 XOR

x ^ y

x << y 연산은 x의 비트를 y만큼 왼쪽으로 이동한다. 반대로 x >> y 연산은 x의 비트를 y만큼 오른쪽으로 이동한다. 비트가 이동한 만큼 비게 된 공간은 대부분 0으로 채워진다. 단, 음수 값의 비트를 오른쪽으로 이동하는 경우 0이 아닌 1로 채워진다. 비트 AND 연산은 값의 특정 비트를 검사하는 데 사용될 수 있다. 비트 OR 연산은 비트 값을 설정할 수 있고, 비트 XOR 연산은 비트 값을 뒤집을 수 있다. 이러한 연산자들은 과학 애플리케이션보다 시스템 프로그래밍에서 더 중요하다. 우리는 3.6.1절에서 비트 연산자를 알고리즘적인 요소로 사용할 것이다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.