» 수학 계산기 » 16진수 계산기: 10진수, 2진수 ↔16진수

16진수 계산기: 10진수, 2진수 ↔16진수

16진수 계산기

목차:

16진수 계산기 사용법

  • 먼저 드롭다운 선택에서 10진법 수를 16진법 수로 변환할 것인지 등을 선택합니다. 선택할 수 있는 변환 종류는 4가지 입니다. (10진수→16진수, 16진수→10진수, 2진수→16진수, 16진수→2진수)
  • 변환하려는 수를 입력하면 계산 결과는 자동으로 표시됩니다.

예를 들어, ’10진수 → 16진수 변환을 선택하고, 10진법의 수를 입력하면 이를 16진수로 계산한 결과가, ‘2진수 → 16진수 변환’을 선택한 후 2진수 수를 입력하면 이를 16진수로 계산한 결과가 표시됩니다.

16진수 계산기는 소수점 아래 숫자가 있는 경우도 변환할 수 있습니다. 소수점 이하가 있는 수를 입력하는 경우 0.0000 (예를 들어 0.625)와 같이 입력하면 됩니다. 10.625와 같이 정수 부분과 소수 부분이 모두 있는 경우도 계산할 수 있습니다.

10진수 또는 2진수를 16진수로 바꾸거나 그 반대 방향으로 바꾸는 방법에 대해서는 아래 설명을 참고하세요.

16진수 변환법

16진법은 10진법에서 쓰는 10개의 수(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)에 추가하여 6개의 ‘문자'(A, B, C, D, E, F)를 추가적인 ‘수’로 사용합니다. 대·소문자를 구분하지 않습으니까 A나 a는 16진법에서는 같은 수라고 보면 되겠습니다.

그런데, A나 a는 알파벳 문자인데 이를 ‘수’라고 부라는 것이 어색할 수 있는데요, 아래에 표로 정리된 10진수 대응 수를 기억해 두면 이 어색함은 어느정도 사라질 것입니다.

16진수 A는 10진수 10에 해당하고, 16진수 B는 10진수로는 11입니다. 아래 표를 참고 하세요. 0 ~ 9까지는 10진수와 16진수가 같고 10 이후부터 달라집니다.

10진수16진수10진수16진수
0088
1199
2210A
3311B
4412C
5513D
6614E
7715F

16진법 수에 대해 어느 정도 이해했으니 이제는 16진수를 10진수로, 10진수를 16진수로, 2진수를 16진수로, 16진수를 2진수로 변환하는 법에 대해 설명하겠니다.

10진수 → 16진수

10진수를 2진수로 변환하는 법을 알고 있다면 10진수를 16진수로 변환하는 법을 알고 있는 것과 마찬가지입니다. 원리는 같으니까요.

물론 다른 점도 있긴 하지만 그 차이는 크지 않습니다. 다른 점이란 10진수 정수를 2진수로 변환할 때는 2로 나누지만, 16진수로 변환하는 경우에는 16으로 나눈다는 점과 나눗셈을 통해 계산한 나머지가 10 ~ 15인 경우 이를 16진수에 해당하는 문자로 바꾸는 과정이 추가 된다는 점입니다.

10진수를 2진수로 변환할 때처럼 16진수로 변환하는 법도 정수를 변환하는 법과 소수를 변환하는 법이 다른데요, 먼저 10진수 정수를 16진수로 계산하는 법부터 시작하기로 하겠습니다.

10진수 정수를 16진수로 변환하는 법

10진수 정수 3645를 예로 들어 16진수로 변환하는 과정을 알아본 후 이를 통해 일반적인 법칙으로 정리하겠습니다.

  • 1단계: 3645를 16으로 나눈 후 몫과 나머지로 계산 결과를 분리합니다. 3645 ÷ 16 → 몫은 227, 나머지는 13인데요, 13에 해당하는 16진수를 위 표에서 찾아 보면 D이므로 1단계의 나머지는 D입니다.
  • 2단계: 1단계에서 계산한 몫 227를 다시 16으로 나누고 몫과 나머지를 기록합니다. 227 ÷ 16 → 몫은 14이고 나머지는 3입니다. 3에 해당하는 16진수도 3이므로 2단계의 나머지는 3입니다.
  • 3단계: 2단계에서 계산한 방법과 동일한 방법으로 몫이 0이 될 때까지 반복합니다. 3645의 경우 3단계에서 몫이 0이 되므로 3단계까지만 계산하면 됩니다. 14 ÷ 16 → 몫은 0, 나머지는 14. 이때 14의 16진수 해당 수는 E이므로 3단계의 나머지는 E입니다.
  • 마지막으로 각 단계에서 기록한 나머지를 아래에서 위로 읽어 왼쪽에서 오른쪽 방향으로 쓰면 16진수 변환이 완료됩니다. 즉 10진수 3645를 16진수로 계산하면 그 답은 E3D입니다.

아래 이미지에 계산 과정을 요약했으니 참고 하시기 바랍니다.

10진수 정수를 16진수로 변환하는 예

10진수 정수를 16진수로 변환하는 법을 요약하면 다음과 같습니다.

  • 1단계: 10진수 정수를 16으로 나누고 몫과 나머지를 기록한 후 나머지를 16진수 해당 수로 바꾼다.
  • 2단계: 1단계에서 계산한 몫에 대해 1단계에서 한 방법을 반복한다. 즉, 16으로 나누고 몫과 나머지를 기록하고, 나머지는 16진수로 변환.
  • 전(前) 단계에서 계산한 몫을 16으로 나눈 후 몫과 나머지를 기록하고 나머지는 16진수에 해당하는 수로 바꾸는 작업을 몫이 0이 될 때까지 반복한다.
  • 몫이 0인 되는 단계까지 마무리를 한 후, 기록한 나머지를 아래에서 위로 읽으면 16진수 변환 완료.

10진수 소수를 16진수로 변환하는 법

10진수 소수 0.90625를 16진수로 변환해 보겠습니다. 정수를 변환하는 경우와 다르게 소수를 변환할 때는 16을 나누는 것이 아니라 곱해야 합니다.

  • 1단계: 0.90625에 16을 곱한 후 그 결과를 정수 부분과 소수 부분으로 분리한 후 정수 부분을 16진수로 바꿉니다. O.90625 × 16은 정수 부분: 14 → E, 소수 부분: 0.5로 분리할 수 있습니다.
  • 2단계: 1단계에서 계산한 소수 부분에 16을 곱한 후 1단계에서 수행한 것과 같은 작업을 합니다. 즉, 0.5 × 16은 정수 부분: 8 → 16진수도 8, 소수 부분: 0.
  • 위 작업을 소수 부분이 0이 될 때까지 계속하는데요, 0.90625의 경우는 2단계에서 소수 부분이 0이 되므로 2단계까지만 작업하면 됩니다.
  • 마지막으로 정수 부분을 위에서 아래 방향으로 읽은 후 소수점을 찍어주면 16진수 변환이 마무리됩니다. 즉, 십진수 0.90625를 16진수로 변환하면 0.E8 입니다.

10진수 소수를 16진수로 바꾸는 계산 과정은 잘 살펴보면 10진수 정수를 16진수로 바꾸는 과정과 반대임을 확인할 수 있습니다. 즉,

  • 16을 나누는 것이 아니라 곱한다.
  • 과정을 마친 후 정수 부분을 읽을 때 아래에서 위로가 아니라 위에서 아래로 읽는다.

아래에 계산 과정을 이미지로 정리했으니 참고 하시기 바랍니다.

10진수 소수를 16진수로 변환하는 예

10진수 소수를 16진수로 변환하려면,

  • 1단계: 10진수 소수에 16을 곱한 후 정수 부분과 소수 부분으로 분리하고, 정수 부분은 16진수로 바꾼다.
  • 2단계: 1단계에서 얻은 소수 부분에 16을 곱한 후 1단계 처럼 정수와 소수로 분리하고 정수 부분을 16진수로 변환한다.
  • 위 과정응 소수 부분이 0이 될 때까지 반복한다.
  • 마지막으로 정수 부분을 위에서 아래 방향으로 읽은 후 소수점을 찍어주면 16진수 변환이 완료된다.

때로는 소수 부분이 0이 되지 않고 계산 과정이 계속될 수 있습니다. 이 경우는 무한 소수 또는 순환 소수가 됩니다.

16진수 → 10진수

16진수를 10진수로 변환하는 방법에는 두 가지가 있습니다. 여기서는 모든 수 체계를 십진법으로 표시하는 공식을 이용하는 방법을 설명하겠습니다.

변환하려는 수가 소수점 이하가 없는 정수라면 아래의 공식을 써서 10진수로 변환할 수 있습니다.

x0×b0 + x1×b1 + … + xn-1×bn-1

  • xi는 16진수 정수의 오른쪽 끝에서 부터 시작되는 자릿 수: x0은 오른쪽 끝 자릿 수, x1은 오른쪽 끝에서 두 번째 자릿 수, x2는 오른쪽 끝에서 세 번째 자릿 수, xn-1은 오른쪽 끝에서 n번째 자릿 수.
  • b는 각 진법의 밑수(base): 16진수인 경우 b는 16.

16진수 E3D를 위 공식을 이용하면 아래와 같이 10진수로 바꿀 수 있습니다.

  • D×160 + 3×161 + E×162,
  • D나 E를 숫자로 바꾸어 주면,
  • 13×160 + 3×161 + 14×162
    = 13 + 48 + 3584 = 3645

변환하려는 수가 소수점 아래 숫자가 있는 소수라면 아래 공식을 이용합니다.

x1×b-1 + x2×b-2 + … + xn×b-n

소수를 변환하는 공식을 적용할 때 정수를 변환하는 공식을 적용하는 것과 다른 점이 3가지 있습니다.

  1. x1은 소숫점 아래 첫 번째 항을 의미한다. 따라서 정수 변환 공식과 다르게 왼쪽에서 오른쪽 방향으로 자릿 수를 읽어야 한다.
  2. b1이 아니라 b-1이다. 즉 1/b, 1/b2,… 등을 곱한다.
  3. 자릿 수나 지수가 0이 아니라 1에서부터 시작한다.

16진수 0.E8을 위 공식을 이용해서 16진수로 변환하면 다음과 같습니다.

  • E×(1/161) + 8×(1/162)
  • E를 숫자로 바꾸어 주면, E는 14이므로 14×(1/161) + 8×(1/162)=0.90625

2진수 → 16진수, 16진수 → 2진수

2진수를 16진수로 변환하려면 2진수를 10진수로 변환한 후 이를 다시 16진수로 변환하면 됩니다. 16진수를 2진수로 변환하는 것도 마찬가지 입니다. 16진수를 일단 10진수로 변환한 후 이를 2진수로 변환하면 됩니다.

이때 2진수를 10진수 그리고 16진수를 10진수로 바꾸는 방법도 알아야 하지만, 이는 앞 단락에서 이용한 공식을 이용함으로써 해결할 수 있습니다.

지금까지 설명한 10진수 ↔ 16진수, 2진수 ↔ 16진수 변환 방법이 16진수 계산기에 적용되어 있습니다. 10진수 또는 2진수로 16진수로 또는 16진수를 10진수나 2진수로 변환할 때 굳이 손으로 계산할 필요 없이 본 계산기를 이용하면 편리합니다.

10진수 ↔ 2진수 변환기도 있으니 필요할 때 이용하시기 바랍니다.