우당탕탕 개발일지

[기초-비트시프트연산] 정수 1개 입력받아 2배 곱해 출력하기(설명)(py) 본문

알고리즘

[기초-비트시프트연산] 정수 1개 입력받아 2배 곱해 출력하기(설명)(py)

민아당긴아 2023. 9. 26. 16:12

컴퓨터에서 숫자는 2진수로 저장되는데, 비트시프트 연산을 통해 2^n배를 쉽게 할 수 있다.

예를 들어서
n = 10일 때
n<<1은 10*(2^1)이고
n<<2는 10*(2^2)이다.

정수 10의 2진수 표현은 1010인데
10 << 1 을 계산하면 ... 10100 이 되고, 이 값은 10진수로 20이다.
10 >> 1 을 계산하면 ... 101 이 되고, 이 값은 10진수로 5이다.

따라서 a와 b값을 입력받고, a에 2^b값을 곱한 값을
print(a<<b)로 간단하게 나타낼 수 있다.