컴퓨터에서 사용하는 수 체계에 대해 정리합니다.
크게 2진수, 8진수, 10진수, 16진수로 나눌 수 있습니다.
2진수를 10진수로 변환하는 방법 각 자리의 숫자에 해당 자리의 2의 제곱을 곱한 후 더합니다.
십진수를 이진수로 변환하는 방법은 나눗셈을 사용하여 십진수를 2로 나누고, 나머지를 기록합니다. 몫이 0이 될 때까지 반복한 후, 나머지를 역순으로 나열하면 이진수가 됩니다.
이진수를 팔진수로 변환하려면 이진수를 3자리씩 그룹으로 나눕니다. 각 그룹을 십진수로 변환한 후 8진수로 나타냅니다.
팔진수를 이진수로 변환하려면 각 자리의 숫자를 3자리의 이진수로 변환합니다.
이진수를 십육진수로 변환하려면 이진수를 4자리씩 그룹으로 나눕니다. 각 그룹을 십진수로 변환한 후 16진수로 나타냅니다.
$$ (1011011)2 = (0010)(1101)(0110)2 = (2)(13)(6){16} = (26D){16} $$
십육진수를 이진수로 변환하려면 각 자리의 숫자를 4자리의 이진수로 변환합니다.
$$ (26D){16} = (2)(6)(D){16} = (0010)(0110)(1101)_2 = (001001101101)_2 $$
컴퓨터에서는 대부분 2진수를 사용하지만, 각 자리수의 변환을 알아야 하는 이유는 다음과 같습니다.
- 메모리 주소 및 데이터를 표현할 때 사용합니다.
- 하지만 읽고 쓰기 어려운 2진수 대신에 간결하게 표현하기 위해 16진수를 사용합니다.
- 실제 메모리 값이
0x61fe18
와 같이 표현되는 이유 - 여기서
0x
는 16진수를 의미합니다.- 2진수는
0b
, 8진수는0
으로 표현합니다.
- 2진수는
0x61fe18
은0110 0001 1111 1110 0001 1000
로 표현됩니다.
- 컬러코드
- IP주소는 내부적으로 2진수로 표현됩니다.