정수형 자료형 int float 4,294,967,295? 2^32
정수형 자료형의 표현 범위가 0 ~ 4,294,967,295인 이유는 주로 32비트로 표현되는 부호 없는 정수 (unsigned int) 의 범위와 관련이 있습니다.
1. 비트와 2진수 표현
컴퓨터에서 숫자는 이진수(binary, 0과 1로 이루어진 수)로 저장됩니다. 숫자 하나를 표현하는데 필요한 자릿수를 **비트(bit)**라고 부릅니다.
- 1 비트는 2개의 상태(0 또는 1)를 표현할 수 있습니다.
- 32 비트는 2^32개의 상태를 표현할 수 있습니다.
따라서, 32비트로 표현할 수 있는 수는 총 2^32 = 4,294,967,296 가지입니다.
2. 부호 없는 정수 (unsigned int)
부호 없는 정수는 음수 없이 0과 양의 정수만을 표현할 수 있습니다. 이 경우, 32비트로 표현 가능한 수는 0부터 시작하여 4,294,967,295까지의 범위를 가집니다.
- 최소값은 0 (모든 비트가 0인 경우)
- 최대값은 4,294,967,295 (모든 비트가 1인 경우)
이 범위는 2^32 – 1이 됩니다. 이렇게 0부터 시작해서 4,294,967,295까지 총 4,294,967,296개의 수를 표현할 수 있기 때문입니다.
3. 부호 있는 정수 (signed int)와의 차이
부호 있는 정수는 음수와 양수를 모두 표현할 수 있기 때문에, 1비트를 부호를 나타내는 데 사용합니다. 그래서 실제로 표현할 수 있는 범위는 음수와 양수를 포함하여 다릅니다.
- 32비트 부호 있는 정수는 -2,147,483,648부터 +2,147,483,647까지의 범위를 가집니다.
- 부호 있는 정수에서는 한 비트가 음수를 나타내기 위한 자리수로 할당되기 때문에 양수의 범위가 줄어듭니다.
정수형 자료형 결론
따라서, 32비트 부호 없는 정수의 표현 범위가 0 ~ 4,294,967,295인 이유는 32비트로 표현 가능한 모든 상태가 0 이상인 정수만을 나타낼 수 있기 때문입니다. 2의 32제곱에서 1을 뺀 값인 4,294,967,295가 최대값이고, 최소값은 0입니다.