본문 바로가기
웹 프로그래밍 기초/자바기반의 웹&앱 응용SW 개발자

자바기반의 웹&앱 응용 SW개발자 양성과정 21일차 -37

by oncerun 2020. 3. 24.
반응형

1.비트 연산자

 

게임프로젝트에서 캐릭터가 8방향 상하좌우 + 각 대각선 방향이 필요하다. 

여러가지 방법이있지만 비트 연산자를 먼저 공부해볼려한다.

 

비트 연산자 

- 컴퓨터 내부의 데이터를 비트 단위로 비교하거나 조작할 때 사용한다.

 

- 기본형 데이터 타입의 각 비트를 개별적으로 조작할 수있다. 

 

비트 논리 연산자(Bitwise Operators)

  &.  비트 교집합 연산자

 - 비트의 AND 연산자로 양쪽의 비트가 모두 1일때만 결과가 1이 되고 그렇지않으면 0이된다.

 ex) 4 & 3 =  0 

 4 = 100 

3 = 011   

0 = 000

겹치는 부분이 없으므로 000 이나오게된다.

 

| 비트 합집합 연산자

- 비트의 OR 연산자로 양쪽의 비트중 하나의 값이라도 1이라면 결과가 1이되고 둘다 0 이면 0이된다.

 ex) 4 & 3 =  7

4 = 100 

3 = 011   

7 = 111

 

하나라도 1이라면 1로 결과가 1이된다.

 

^ 비트 차집합 연산자

- 비트의 차집합 연산자로 양쪽의 비트에 차이가 있을경우에 결과가 1이되고 차이가없을땐 0이된다.

 ex) 4 & 3 =  7

4 = 100 

3 = 011   

7 = 111

 

전부 차이가있음.

 

~ 비트 부정 연산자

-비트의 NOT연산자는 피연산자를 하나만 갖는 단항 연사자인데 모든 비트값을 반대로 바꾼다.

 

ex) ~7 = 0

 

7 =111, 

~7= 000 

 

 

2.쉬프트 연산자

-쉬프트 연산자는 말그래도 bit를 shift해주는 연산자이다.

 

쉬프트 연산자 종류는

 

>> : 우측 쉬프트 연산자는 좌측의 있는 피연산자의 비트값을 우측에 지정한 수만큼 오른쪽으로 비트를 이동시켜주는 연산자이다.

 

ex) 4 >> 2 = 1

 

4 = 0100 

1 = 0001

 

 

<< : 좌측 쉬프트 연산자 우측에 있는 피연산자의 비트값을 좌측으로 지정한 수만큼 좌측으로 비트를 이동시켜주는 연산자이다.

ex)  ex) 3 << 3 =  24

 3 = 011   

 24 = 0001 1000

 

반응형

댓글