CS

>>, << 쉬프트 연산 C++

재윤 2023. 12. 2. 19:31
반응형
  • 쉬프트 연산에 대해서 공부해보자

숫자 5를 2진수로 나타내면(8bit)

 

 

이제 5에다가 2를 곱해보자

5 * 2 = 10;

 

→ 여기서 알 수 있음. 1이 있는 비트들이 왼쪽으로 한칸씩 이동하는 것

즉 2를 곱할 때마다 한자리씩 높아짐

이 원래 어디서 많이 봤는데 ?

 

→ 2^0, 2^1, 2^2, 2^3, 2^4 … 자리 그대로가 이렇게 올라가는 거

쉬프트 연산으로 10을 만들어보자

 

#include <iostream>

int main()
{
	int a = 5;
	a = a << 1;
	std::cout <<  a << std::endl;
	
}

 

 

이제는 숫자가 20인 상태에서 5를 만들어보자

#include <iostream>

int main()
{
	int a = 20;
	a = a >> 2;
	std::cout <<  a << std::endl;
	
}

 

 

이 분 블로그를 토대로 공부하였습니다!

쉬프트 연산( << , >> )

 

쉬프트 연산( << , >> )

음 보통 알고리즘 문제 풀거나 계산을 많이 하는 과정에서 *2를 하거나 /2를 하는 계산이 꽤나 많이 있는데....(2의 n승 전부)보통은 a *= 2, 또는 a /= 2 이런식으로 곱하기 나누기를 하지만 사실은 그

hahahia.tistory.com

 

반응형

'CS' 카테고리의 다른 글

inff, inf, nan, NAN  (1) 2024.01.26
리터널, 상수  (0) 2024.01.26
이진 기수법을 통한 고정 소수점과 부동 소수점  (2) 2024.01.24
이진 기수법(이진법)  (1) 2024.01.24