기능 소개
진법 변환기는 정수 하나를 자주 쓰는 위치 기수법 전체로 한 번에 보여 줍니다. 2진수(base 2), 8진수(base 8), 10진수(base 10), 16진수(base 16), 36진수입니다. 이 중 어느 진법으로든 숫자를 입력하면 나머지가 입력과 동시에 갱신되며, 각 행에 복사 버튼이 있습니다.
프로그래머는 진법 변환을 늘 씁니다. 16진수 색상이나 메모리 주소를 읽을 때, 비트 플래그와 마스크를 2진수로 확인할 때, Unix 파일 권한을 8진수(755)로 설정할 때, 36진수로 ID를 짧게 줄일 때 등입니다.
사용 방법
- 입력란에 숫자를 입력하거나 붙여 넣고, 또는 예시를 클릭합니다.
- 입력 진법을 자동으로 두면
0x,0o,0b접두사를 인식하고, 접두사 없는 숫자는 10진수로 읽습니다.ff처럼 16진수 숫자를 접두사 없이 입력하려면 진법을 직접 고르세요. - 자릿수 그룹을 켜면 긴 결과를 읽기 쉽게 나눕니다. 2진수와 16진수는 4자리, 10진수와 8진수는 3자리씩입니다.
- 각 행의 복사 버튼으로 값을 복사합니다. 비트 길이 행은 값에 필요한 비트 수를 알려 주므로 정수 타입을 고를 때 도움이 됩니다.
예시
CSS의 주황색 계열인 0xFF5733은 다음과 같습니다.
| 진법 | 값 |
|---|---|
| 10진수 | 16734003 |
| 2진수 | 111111110101011100110011 |
| 8진수 | 77653463 |
| 36진수 | 9yo1f |
빨강, 초록, 파랑에 1바이트씩, 모두 24비트가 필요합니다.
진법 변환의 원리
b진법에서는 각 자리가 오른쪽 자리의 b배 가치를 가집니다. 16진수 ff는 15 × 16 + 15 = 255입니다. 다른 진법으로 바꿀 때는 새 진법의 기수로 계속 나누고 나머지를 거꾸로 읽습니다. 16 = 2⁴, 8 = 2³이므로 16진수 한 자리는 정확히 2진수 네 자리에, 8진수 한 자리는 세 자리에 대응합니다. 그래서 16진수가 2진수를 간결하게 쓰는 방법으로 쓰입니다.
자주 묻는 질문
› 얼마나 큰 수까지 변환할 수 있나요?
사실상 제한이 없습니다. 임의 정밀도 정수(BigInt)를 사용하므로 2^53을 넘으면 정밀도를 잃는 계산기와 달리 64비트, 128비트, 그보다 긴 값도 정확히 변환됩니다.
› 16진수나 2진수는 어떻게 입력하나요?
입력 진법을 자동으로 두고 16진수는 0x, 2진수는 0b, 8진수는 0o를 앞에 붙입니다. 예: 0xff, 0b1010. 또는 메뉴에서 진법을 고른 뒤 접두사 없이 숫자만 입력해도 됩니다.
› 음수는 어떻게 표시되나요?
마이너스 기호 뒤에 절댓값을 붙여 표시합니다. 예를 들어 -255는 16진수로 -ff입니다. 고정 폭 2의 보수 형태로는 변환하지 않습니다.
› 구분 기호가 들어간 숫자를 붙여 넣어도 되나요?
네. 공백, 밑줄, 쉼표는 무시되므로 1_000_000과 1,000,000 모두 됩니다. 자릿수 그룹을 켜면 결과에 다시 공백을 넣어 줍니다.