진수 변환기
2·8·10·16진수는 물론 2~64 사이 임의 진법으로 숫자를 변환합니다. 아주 큰 수도 정확하게. 무료, 브라우저 처리.
구분 기호는 무시됩니다 — 0xDE_AD_BE_EF, 1010_1010 처럼 그룹화된 값을 붙여넣어도 됩니다.
——————여기의 64진법은 0-9 a-z A-Z + / 를 자릿수로 쓰는 위치 기수법입니다 — 대소문자를 구분하며 42는 NDI= 가 아니라 G 입니다.
🔒 브라우저에서 임의 정밀도 연산으로 변환되며 (2–64진법) 업로드되지 않습니다.
진법 간 숫자 변환
숫자와 그 진법을 입력하면 2·8·10·16진수로 즉시 변환하고, 2~64 사이 임의 진법도 함께 보여줍니다 — 각각 복사 버튼과 함께. 임의 정밀도(BigInt) 연산을 써서 일반 계산기로는 다루기 힘든 큰 값도 정확하게 유지됩니다. 모든 처리는 브라우저에서 이뤄집니다.
16진수가 바이트의 언어인 이유
1바이트는 8비트이고 16은 2의 4제곱이라, 정확히 16진수 두 자리가 정확히 1바이트를 덮고 남는 것이 없습니다.
FF가 255, 바이트가 담는 최댓값입니다. 이만큼 깔끔하게 맞아떨어지는 게 없습니다. 10진수는 바이트당
두세 자리가 필요하고 경계가 움직이며, 2진수는 여덟 자리가 필요해 정확하지만 읽을 수 없습니다. 색이
#RRGGBB인 이유, 메모리 주소와 해시가 16진수인 이유가 이 사실 하나입니다. 자리당 3비트인 8진수는
12비트·36비트 기계의 시대에서 왔고 지금은 주로 유닉스 파일 권한에 남아 있습니다. 읽기·쓰기·실행에 필요한 것이
정확히 자리당 3비트이기 때문입니다.
36진법을 넘으면 대소문자가 값이 됩니다
숫자는 0–9 다음에 a–z로 이어지고, 그래서 대소문자를 구분하지 않는 진법은 36에서 끝납니다. 이 도구는 A–Z로
이어 붙여 64까지 갑니다. 36을 넘으면 글자의 대소문자가 값의 일부가 되어, 64진법에서 g와
G는 서로 다른 숫자입니다. 이것은 위치 기수법이고, 데이터 URI나 메일 첨부에서 보는 Base64와는
다릅니다. 그쪽은 고유한 알파벳과 패딩을 가진 바이트 인코딩이고 base64 인코더에 있습니다. 여기
연산은 임의 정밀도라 200자리 수도 부동소수점이 되어 꼬리를 잃지 않고 정확히 변환됩니다.
자주 묻는 질문
36진법 같은 특이한 진법도 되나요?
네. "from base"를 2~64 사이로 지정하고, 커스텀 진법 칸에서 같은 범위의 목표 진법으로 변환할 수 있습니다.
아주 큰 수도 되나요?
네. BigInt 연산을 쓰므로 64비트 이상의 값도 반올림 없이 정확히 변환합니다.
0x·0b 접두사를 쓸 수 있나요?
네. 16진수는 0x, 2진수는 0b 접두사를 받아들이며, 접두사 없이 숫자만 입력해도 됩니다.
여기 64진법이 Base64 인코딩과 같은 건가요?
다릅니다. 흔한 혼동입니다. 이것은 0-9 a-z A-Z + / 를 자릿값으로 쓰는 위치 기수법입니다. Base64 인코딩은 3바이트를 4글자로 묶는 방식으로 알파벳도 다르고 = 패딩이 붙습니다. 그쪽은 base64 인코더를 쓰세요.
36이라는 한계가 자꾸 나오는 이유는요?
숫자 10개에 알파벳 26개를 더하면 36입니다. 거기까지는 대소문자를 구분하지 않고 쓸 수 있어 많은 시스템이 그 선에서 멈춥니다. 더 올라가려면 대문자를 다시 쓰면서 대소문자 무시를 포기해야 합니다.
아주 큰 수도 정확한가요?
정확합니다. 부동소수점이 아니라 임의 정밀도 정수로 계산하므로, 계산기가 담지 못하는 크기의 수도 자리 하나까지 반올림 없이 변환됩니다.