728x90

๋ฌธ์ œ ์„ค๋ช…

์ •์ˆ˜ 1๊ฐœ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ 2๋ฐฐ ๊ณฑํ•ด ์ถœ๋ ฅํ•ด๋ณด์ž.

์ฐธ๊ณ 
*2 ์˜ ๊ฐ’์„ ์ถœ๋ ฅํ•ด๋„ ๋˜์ง€๋งŒ,
์ •์ˆ˜๋ฅผ 2๋ฐฐ๋กœ ๊ณฑํ•˜๊ฑฐ๋‚˜ ๋‚˜๋ˆ„์–ด ๊ณ„์‚ฐํ•ด ์ฃผ๋Š” ๋น„ํŠธ๋‹จ์œ„์‹œํ”„ํŠธ์—ฐ์‚ฐ์ž <<, >>๋ฅผ ์ด์šฉํ•œ๋‹ค.

2์ง„์ˆ˜ ํ˜•ํƒœ๋กœ ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๊ฐ’๋“ค์„ ์™ผ์ชฝ(<<)์ด๋‚˜ ์˜ค๋ฅธ์ชฝ(>>)์œผ๋กœ
์ง€์ •ํ•œ ๋น„ํŠธ ์ˆ˜๋งŒํผ ๋ฐ€์–ด์ฃผ๋ฉด 2๋ฐฐ์”ฉ ๋Š˜์–ด๋‚˜๊ฑฐ๋‚˜ ๋ฐ˜์œผ๋กœ ์ค„์–ด๋“œ๋Š”๋ฐ,

์™ผ์ชฝ ๋น„ํŠธ์‹œํ”„ํŠธ(<<)๊ฐ€ ๋  ๋•Œ์—๋Š” ์˜ค๋ฅธ์ชฝ์— 0์ด ์ฃผ์–ด์ง„ ๊ฐœ์ˆ˜๋งŒํผ ์ถ”๊ฐ€๋˜๊ณ ,

a<<1 = 2๋ฐฐ ๊ณฑํ•˜๊ธฐ

์˜ค๋ฅธ์ชฝ ๋น„ํŠธ์‹œํ”„ํŠธ(>>)๊ฐ€ ๋  ๋•Œ์—๋Š”
์™ผ์ชฝ์— 0(0 ๋˜๋Š” ์–‘์˜ ์ •์ˆ˜์ธ ๊ฒฝ์šฐ)์ด๋‚˜ 1(์Œ์˜ ์ •์ˆ˜์ธ ๊ฒฝ์šฐ)์ด ๊ฐœ์ˆ˜๋งŒํผ ์ถ”๊ฐ€๋œ๋‹ค.

a>>1 = ๋ฐ˜์œผ๋กœ ๋‚˜๋ˆ„๊ธฐ

๋ฒ”์œ„(32๋น„ํŠธ)๋ฅผ ๋„˜์–ด์„œ ์ด๋™๋˜๋Š” ๋น„ํŠธ๋Š” ์‚ญ์ œ๋œ๋‹ค.

์˜ˆ์‹œ
int a=10;
printf("%d", a<<1); //10์„ 2๋ฐฐ ํ•œ ๊ฐ’์ธ 20 ์ด ์ถœ๋ ฅ๋œ๋‹ค.
printf("%d", a>>1); //10์„ ๋ฐ˜์œผ๋กœ ๋‚˜๋ˆˆ ๊ฐ’์ธ 5 ๊ฐ€ ์ถœ๋ ฅ๋œ๋‹ค.
printf("%d", a<<2); //10์„ 4๋ฐฐ ํ•œ ๊ฐ’์ธ 40 ์ด ์ถœ๋ ฅ๋œ๋‹ค.
printf("%d", a>>2); //10์„ ๋ฐ˜์œผ๋กœ ๋‚˜๋ˆˆ ํ›„ ๋‹ค์‹œ ๋ฐ˜์œผ๋กœ ๋‚˜๋ˆˆ ๊ฐ’์ธ 2 ๊ฐ€ ์ถœ๋ ฅ๋œ๋‹ค.

์ž…๋ ฅ

์ •์ˆ˜ ํ•œ ๊ฐœ๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค.
๋‹จ, -1073741824 ~ +1073741823

 

์ถœ๋ ฅ

2๋ฐฐ ๊ณฑํ•œ ์ •์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

์ž…๋ ฅ ์˜ˆ์‹œ
1024

์ถœ๋ ฅ ์˜ˆ์‹œ
2048

๋ฌธ์ œ ํ’€์ด

#include <stdio.h>

int main(){
    long long int n;
    scanf("%lld",&n);
    printf("%lld",n<<1);
    
    return 0;
}

+ Recent posts