자바/기본적인 개념

쉬프트 연산자

백_곰 2021. 1. 2. 12:40

1. 양수

- 2진수의 자리를 원하는 만큼 옮기고 빈 자리를 0으로 채운다.

 

2. 음수

- 2진수의 자리를 원하는 만큼 옮기고 빈 자리를 1로 채운다.

 

- 예제(1)

8>>2

 

(10진수인 8의 2진수를 오른쪽으로 2자리 이동시킨다.)

(x << n은 x*2^n의 결과와 같다.)

(x >> n은 x/2^n의 결과와 같다.)

 

 

3. 쉬프트 연산자가 쓰이는 이유

- 위 예제(1)에서 말한 연산 규칙은 가독성을 떨어뜨린다. 그러나 실행속도는 곱셈과 나눗셈보다

더 빠르게 될 것이다.

- 그러므로 상황마다 필요한 곳에 잘 활용해야 한다.