컴퓨터/IT 인사이트

오버플로우 - 강남스타일의 유튜브 조회수가 이상하게 나왔던 이유

달서비 2026. 2. 9. 22:50

강남스타일 오버플로우 에러

2014년 12월 유튜브에서는 다음과 같은 에러가 발생하였습니다. 2,147,483,647이라는 숫자를 넘어 - 숫자가 나오기 시작했습니다. 컴퓨터가 이 숫자를 감당 못 한 이유는 무엇일까요?

 

오버플로우

오버플로우(Overflow)는 말 그대로 넘쳐흐른다는 뜻입니다. 우리가 컵에 물을 부을 때 계속 물을 부으면 결국 컵에 물이 넘치는 것과 같이 컴퓨터에서 계산할 때도 메모리가 넘치면 에러가 발생합니다.

 

컴퓨터는 0과 1로 표현합니다. 2,147,483,647이라는 값도 2^31 -1입니다. 여기서 1을 더하면 어떻게 될까요? 산술적으로는 2^31이라는 값이 나오지만, 컴퓨터의 계산 방식(2의보수)로 인하여 -2^31 = -2,147,483,648이라는 숫자가 나옵니다. 

 

보수(Complement)

10진수 1의보수 2의보수
+ 7 0111 0111
+ 6 0110 0110
+ 5 0101 0101
+ 4 0100 0100
+ 3 0011 0011
+ 2 0010 0010
+ 1 0001 0001
+ 0 0000 0000
- 0 1111
- 1 1110 1111
- 2 1101 1110
- 3 1100 1101
- 4 1011 1100
- 5 1010 1011
- 6 1001 1010
- 7 1000 1001
- 8 X 1000

int 자료형은 보통 (+/-)를 가집니다. 컴퓨터가 0과 1로 이루어져 있기에 뺄쌤하기 위해 보수라는 방법을 사용합니다. 

수를 뒤집어 더하면 뺄쌤하는 것과 같은 효과가 있어 보수를 취합니다. 1의 보수, 2의 보수 방법은 총 2가지가 있으며 1의 보수 같은 경우에는 +0, -0으로 0이 두번 생겨 일반적으로는 2의 보수를 사용합니다.

 

각 보수를 구하는 법은 다음과 같습니다.

  • 1의 보수 : 0과 1을 뒤집는다 (+7 = 0111 / -7 = 1000)
  • 2의 보수 : 0과 1을 뒤집은 뒤 1을 더한다 (+7=0111 / -7 1001)

오버플로우가 나온 까닭은 맨 앞자리의 숫자가 바뀌었기 때문입니다. 가장 앞에 자릿수가 양수, 음수임을 파악합니다. 이에 따라 컴퓨터가 음수로 인식하게 됩니다.

 

 

현재의 유튜브는 어떻게 되었는가 

2026년 2월 기준 1등 영상 - 아기상어

 

현재 유튜브는 64비트로 늘렸습니다. 166억이 넘는 조회수가 나와도 오류가 나오지 않습니다.

이수의 최대 양수 범위만 표기하자면 다음과 같습니다.

구분 최대 양수(수식) 최대 양수(숫자)
32비트 2^31 - 1 2,147,483,647
64비트 2^63 -1 9,223,372,036,854,775,807

이제 전 세계 인구(80억 가정)가 1153번씩 영상을 봐야 오버플로우를 만들 수 있습니다.

 

마지막으로 - 컴퓨터로 무한대를 만들 수 없는가

우리는 머릿속으로 무한대를 생각하고 ∞라고 정의하지만 컴퓨터는 CPU와 RAM 이용하여 계산합니다.

각 비트는 전기적 신호지만 공간적인 한계로 무한정 늘릴 수 없습니다. 또한 만약에 이것이 가능할 부지가 마련되어도 이를 사용하기 위해서는 계산하기위해 속도를 희생하게 됩니다. 우리는 일반적으로 많이 쓰는 수를 가지고 이에 따라 적절한 범위(자료형)를 지정하여 사용하게 됩니다.

 

이미지 출처

https://www.exploringbinary.com/gangnam-style-video-overflows-youtube-counter/

 

Gangnam Style Video Overflows YouTube Counter - Exploring Binary

On Monday, Psy’s Gangnam Style video exceeded the limit of YouTube’s view counter; this is what Google had to say (hat tip: Digg): “We never thought a video would be watched in numbers greater than a 32-bit integer (=2,147,483,647 views)…” 2,147,

www.exploringbinary.com