김 컴퓨터


정수 (Integer) 기초

정수는 수학적으로 소수점 이하의 부분이 없는 수의 집합입니다. 양의 정수, 음의 정수, 그리고 $0$으로 구성됩니다. 컴퓨터 과학에서는 데이터를 처리하는 기본 단위가 되며, $\mathbb{Z}$로 표기합니다.


1. 정수의 정의와 분류

정수는 크게 세 가지 종류로 분류됩니다.

  1. 양의 정수 (Positive Integers): 자연수(Natural Numbers)와 같은 수로, $1, 2, 3, \dots$ 와 같이 $0$보다 큰 정수입니다.
  2. $0$ (Zero): 양수도 음수도 아닌 기준이 되는 정수입니다.
  3. 음의 정수 (Negative Integers): $-1, -2, -3, \dots$ 와 같이 $0$보다 작은 정수입니다.

$$ \mathbb{Z} = {\dots, -3, -2, -1, 0, 1, 2, 3, \dots} $$

[Image of Integer number line]


2. 컴퓨터에서의 정수 표현

컴퓨터는 모든 데이터를 2진수(Binary)로 저장하며, 정수를 표현하는 방식은 그 수의 크기와 부호에 따라 달라집니다.

① 저장 단위 (Size)

C언어의 intlong처럼, 정수는 정해진 비트 수(예: 8비트, 16비트, 32비트, 64비트)의 메모리 공간에 저장됩니다. 비트 수가 클수록 표현할 수 있는 정수의 범위가 넓어집니다.

② 부호 (Sign) 처리: 2의 보수법

컴퓨터는 음수를 표현하고 뺄셈 연산을 덧셈으로 처리하기 위해 2의 보수(Two's Complement) 방식을 사용합니다.

예시 (8비트): * 양수 $5$: $\mathbf{0}0000101$ * 음수 $-5$: $00000101$의 2의 보수 $\rightarrow \mathbf{1}1111011$


3. 정수의 활용