공부/알고리즘

비트연산

티오비 2017. 6. 27. 16:43

비트 연산

AB~AA&BA|BA^B
001000
011011
100011
110110

※ 어떤 수가 홀수인지 판별하는 if(N % 2 == 1) 은 if (N & 1)로 줄일 수 있다.

Not

  • not 연산의 경우에는 자료형에 따라 결과가 달라진다. unsigned나 signed에 따라 보여지는 값도 다르다.

    num = 64 2진수 01000000

    ~ A = 10111111 8비트

    ~ A = 11111111 11111111 11111111 10111111 32비트 자료형

Shift left(<<)

A << B : A를 왼쪽으로 B 비트만큼 민다. A * 2^B 와 같다

1 << 1 = 2

1 << 2 = 4

1 << 4 = 16

3 << 3 = 24

5 << 10 = 5120

Shift right(>>)

A >> B : A를 오른쪽으로 B비트만큼 민다. A >> B A / 2^B

1 >> 0 = 1

1 >> 1 = 0

10 >> 1 = 5

10 >> 2 = 2

10 >> 3 = 1

1024 >> 10 = 1

'공부 > 알고리즘' 카테고리의 다른 글

1260 dfs와 bfs  (0) 2018.01.12
14891 톱니바퀴  (0) 2018.01.11
6593 - 상범빌딩  (0) 2017.12.31
백준 14620 - 꽃길  (0) 2017.12.29
2017년 삼성 sw 역량 테스트 문제입니다.  (0) 2017.12.28