[C++] '<<' , '>>' 비트 시프트 연산(bit shift)

2024. 12. 26. 15:04·프로그래밍/백준(C++)

백준 문제를 풀다보니 시프트 연산에 대한 이해가 덜 되서, 정말 가볍게 정리하려고 한다.

 

시프트 연산과 곱셈 나눗셈의 연관

'0b0101' 란 수가 있다. 이는 \(2^2 + 2^0\) 이다. 이에 시프트 연산을 하려고한다.

 

'<< 1' 연산을 하면,

'0b1010'이 된다. 이는 \(2^3 + 2^1\) 로, \(2^1 * (2^2 + 2^0)\) 이다.

 

따라서 2를 곱하는 것이 되는 것이고, 이에 반대인 '>> n' 연산은 \(2^n\)로 나누는 연산이 되는 것이다.
나누는 것은 '/' 연산과 같다. (소수점이 나오지 않는다.)

 

 

저작자표시 비영리 변경금지 (새창열림)

'프로그래밍 > 백준(C++)' 카테고리의 다른 글

[알고리즘] 백트래킹(Backtracking)  (10) 2024.12.27
[백준/C++] 10818번 - 최소, 최대 (정적할당, 동적할당)  (6) 2023.01.03
'프로그래밍/백준(C++)' 카테고리의 다른 글
  • [알고리즘] 백트래킹(Backtracking)
  • [백준/C++] 10818번 - 최소, 최대 (정적할당, 동적할당)
shintesh
shintesh
게임 프로그래머를 꿈꾸는 학부생
  • shintesh
    Tesh
    shintesh
  • 전체
    오늘
    어제
    • 분류 전체보기 (14)
      • 프로그래밍 (14)
        • 백준(C++) (3)
        • 언리얼 (1)
        • Git(깃) (2)
        • 자료구조 (2)
        • C++ (3)
        • DirectX 11 (1)
        • Windows API (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • My Github
    • My Youtube
  • 공지사항

  • 인기 글

  • 태그

    큐
    백준
    게임
    깃허브
    스택
    언리얼5
    대학생과제
    VS Code
    대학생게임
    대학생
    인디게임
    GIT
    c++
    비주얼스튜디오코드
    깃
    Stack
    queue
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
shintesh
[C++] '<<' , '>>' 비트 시프트 연산(bit shift)
상단으로

티스토리툴바