ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • bit-mask
    잡다한 지식 2020. 4. 4. 18:59

    Bit mask 비트마스크


    • 정수를 이진수 표현으로 사용하는 것을 비트 마스크라고한다.

    ((컴퓨터는 정수형 변수를 이진수로 표현.))

    비트가 1이면, true 켜져있다.

    비트가 0이면, false 꺼져있다.


    N개의 비트가 있을 때 

    정수의 최소값은  0

    정수의 최대값은 2^N - 1


    • 연산 종류

    1. AND 연산 : &

    2. OR 연산 : |

    3. XOR연산 : ^

    4. NOT연산 : ~

    5. SHIFT연산 : <<, >>

       a << b : a * 2^b

       a >> b : a / 2^b


    • 예를 들어 6개의 비트가 있다면.

    0 0 0 0 0 0 ~ 1 1 1 1 1 1 : 0부터 63까지 표현이 가능하다.


    특정 n번째 비트를 1로 바꾸는 방법은

    int temp =0; 

    temp |= (1 << n);


    특정 n번째 비트를 0으로 바꾸는 방법은

    temp &= ~(1 << n);


    특정 n번째 비트를 반전시키는 방법은

    temp ^= (1 << n);


    특정 n번째 비트가 1인지 확인하는 방법은

    if(temp & (1 << n))    -> true를 반환하는 것은 n번째 비트가 1이라는 뜻이다.


    '잡다한 지식' 카테고리의 다른 글

    lower_bound & upper_bound 함수  (0) 2020.07.12
    bitset 사용법  (0) 2020.05.28
    복잡도 표기법  (0) 2020.03.27
    sort 함수 사용법  (0) 2020.03.25
    next_permutaion 함수  (0) 2020.03.18

    댓글

Designed by Tistory.