진법 변환
수를 십진법에서 다른 진법으로, 거꾸로 다른 진법에서 십진법으로 바꾸는 방법을 알아보자.
진법이란
우리는 보통 십진법을 쓴다. 십진법에는 0, 1, 2, 3, 4, 5, 6, 7, 8, 9의 숫자 열 개가 있다. 십진법의 특징은 어떤 수, 예를 들어 57에 10을 곱하면 자리가 하나 올라간다는 것이다. 즉 이 수를 나타내는 데 숫자가 하나 더 필요하다. 570이 된다.
다른 진법도 있다. 예를 들어 8진법에는 숫자 0, …, 7만 있다. 그래서 7 + 1은 10이 된다. 8진법에는 숫자 8이 없기 때문이다. 십육진법에는 숫자 0, 1, … 14, 15가 있다. 9보다 큰 숫자 대신 알파벳을 쓰기도 하므로, 십육진법의 숫자는 0, …9, A, B, C, D, E, F가 된다.
놀랍게도 일상에서도 다른 진법을 만난다. 예를 들어 시간이 그렇다. 초와 분은 60진법으로 센다. 하루의 어느 순간이든 세 자리의 60진법 수로 쓸 수 있다. 첫째 자리는 시, 둘째 자리는 분, 셋째 자리는 초를 나타낸다. 자리를 쌍점으로 구분하면 예를 들어 14:05:59라는 수가 된다. 이 시각에 1초를 더하면 14:05:60이 아니라 14:06:00이 된다는 것에 주목하자. 60은 60진법의 숫자가 아니기 때문이다.
십진법에서 이진법으로
종이에 70이라는 수가 있다고 하자. 이 수를 이진법으로 바꾸고 싶다. 원리는 꽤 간단하다. 바꾸려는 수를 0이 될 때까지 계속 2로 나누면서, 나눗셈의 나머지를 적어 둔다. 다른 진법, 예를 들어 십육진법으로 바꾸고 싶으면 16으로 나눈다. 6진법이라면 6으로 나눈다. 실제로는 다음과 같다.
이진법으로 나타낸 수는 나머지들로 이루어진다. 다만 나머지를 위에서부터가 아니라 아래에서부터 읽는다. 따라서 70을 이진법으로 나타내면 1000110이다.
이진법에서 십진법으로
거꾸로 바꿀 때는 다음과 같이 한다. 1100010을 십진법으로 바꾸어 보자. 이 방향이 더 간단하다. 다음 합만 계산하면 된다.
각 항은 x · 2i 꼴이다. 여기서 x는 원래 이진수의 숫자이고, i는 오른쪽에서부터 1씩 커진다. 1100010을 바꾸는 것이므로 이 합은 다음과 같다.
1100010은 일곱 자리 수이므로 2의 지수는 차례로 6, 5, …, 1, 0이다. 거듭제곱을 계산하고 곱하면 다음 식을 얻는다.
이 방법은 왜 통할까?
십진법으로 확인해 보자. 수, 예를 들어 7384에서 각 숫자는 실제로 무엇을 뜻할까? 숫자 4는 일의 개수, 숫자 8은 십의 개수, 숫자 3은 백의 개수, 숫자 7은 천의 개수를 나타낸다. 그래서 다음과 같이 쓸 수 있다.
이 식을 100, 10, 1 대신 언제나 10의 거듭제곱이 나오도록 바꿀 수 있다. 100 = 1, 101 = 10 등이 성립하므로 다음과 같이 쓸 수 있다.
십진법의 모든 수는 같은 방법으로 나타낼 수 있고, 이때 각 항은 x · 10i 꼴이다. 여기서 x는 0부터 9까지의 숫자로, 모두 열 개이다. i는 자리를 나타내는 0 이상의 정수이다. i = 0이면 그 항은 일의 자리를, i = 2이면 백의 자리를 나타낸다(102 = 100이므로).
이번에는 7348을 십진법에서, 음…, 십진법으로 바꾸어 보자. 나름 의미가 있다. 7348을 10으로 나눈다.
나머지를 아래에서부터 읽으면 7348이다. … 같은 진법으로 바꾸려던 원래 수가 그대로 다시 나온다.
이진법도 똑같이 나타낼 수 있다. 모든 항은 x · 2i 꼴이고, 여기서 x는 숫자 0 또는 1이다. i는 이번에도 자리를 나타낸다. 10으로 계속 나누면 십진법으로 나타낸 수의 각 자리 숫자를 얻는 것처럼, 2로 계속 나누면 이진법의 각 자리 숫자를 얻는다.
또 수를 10으로 나누었을 때 나머지는 언제나 구간 [0, 9]에 있다는 것에도 주목하자. 수를 2로 나누면 나머지는 0 또는 1이다.
다른 진법으로
앞에서 십진법을 이진법으로 바꾼 방법은 매우 일반적이어서 다른 진법에도 쓸 수 있다. 185를 십육진법으로 바꾸고 싶으면 16으로 나누기만 하면 된다.
185는 십육진법으로 (11, 9)가 된다. 9보다 큰 “숫자” 대신 보통 알파벳을 쓰므로 10 = A, 11 = B, 12 = C, …이다. 따라서 185는 십육진법으로 B9라고 쓸 수 있다.
마찬가지로 십육진법의 B9를 십진법으로 바꿀 수 있다.