본문으로 건너뛰기
AZ Tools

진법 변환기

2진수, 8진수, 10진수, 16진수 중 어느 진법으로든 숫자를 입력하면 네 가지 표기 모두로 즉시 변환해 보여줍니다. 변환에는 임의 정밀도 정수(BigInt)를 사용하므로 64비트 ID나 256비트 해시 같은 거대한 값도 정확하게 변환됩니다 — 2^53을 넘는 정수를 조용히 망가뜨리는 부동소수점 기반 변환기와는 다릅니다. 모든 처리는 브라우저 안에서 이루어져 서버로 전송되는 것이 없고, 입력값은 로컬에 저장되어 새로고침 후에도 유지됩니다. 진법마다 드러내는 구조가 다르기 때문에 진법 변환은 프로그래밍에서 일상적인 작업입니다. 16진수 한 자리는 정확히 4비트를 담아 2진수의 간결한 축약 표기가 됩니다 — FF는 11111111이고 1바이트는 항상 16진수 두 자리입니다. 그래서 메모리 주소, 색상 코드, MAC 주소에 16진수가 쓰입니다. 8진수는 비트를 3개씩 묶는 표기로, 지금은 주로 유닉스 파일 권한(chmod 755)에 남아 있습니다. 이 도구는 음이 아닌 정수만 다루며, 고정 비트 폭이 없으므로 2의 보수로 해석하지 않습니다(여기서 FF는 −1이 아니라 255입니다).

2진수
8진수
10진수
16진수

사용법

  1. 입력란에 숫자를 입력하거나 붙여넣으세요 — 0x나 0b 접두사 없이 숫자만 넣습니다.
  2. 그 숫자가 적힌 진법을 선택하세요: 2진수(2), 8진수(8), 10진수(10), 16진수(16).
  3. 네 가지 진법의 결과를 확인하세요. 입력하는 즉시 갱신됩니다.
  4. 각 결과의 복사 버튼으로 원하는 값을 복사하세요.
  5. 오류가 표시된다면 선택한 진법에 존재하지 않는 숫자가 포함된 것입니다(예: 8진수의 '8').

자주 묻는 질문

숫자는 얼마나 클 수 있나요?
얼마든지 큽니다. 변환에 큰 정수(BigInt)를 사용하므로 64비트 ID든 256비트 해시든 그보다 훨씬 큰 값이든 정확히 변환됩니다. 일반적인 부동소수점 변환기는 2^53(약 9×10^15)을 넘으면 정밀도를 잃지만, 이 도구는 절대 반올림하지 않습니다.
음수나 소수도 지원하나요?
아니요 — 음이 아닌 정수만 변환합니다. 실제 하드웨어에서 음수 표현은 선언된 비트 폭에 따라 달라집니다(2의 보수에서 FF는 8비트 부호 있는 값으로는 −1이지만 부호 없는 값으로는 255). 폭을 모르면 정답이 하나로 정해지지 않으므로, 여기서는 절댓값을 변환한 뒤 부호나 폭 해석을 직접 적용하세요.
0x나 0b 접두사를 붙여야 하나요?
아니요 — 접두사는 빼세요. 입력란은 선택한 진법에서 유효한 숫자만 받아들이므로 '0x1F'는 거부됩니다('x'는 숫자가 아니기 때문). 대신 '1F'를 입력하고 16진수를 선택하세요.
프로그래머는 왜 16진수와 8진수를 쓰나요?
비트에 깔끔하게 대응되기 때문입니다. 16진수 한 자리는 정확히 4비트이고 두 자리는 1바이트여서 메모리 주소, 바이트 덤프, #RRGGBB 색상 코드에 이상적입니다. 8진수 한 자리는 3비트로, 유닉스의 rwx 권한 3비트 묶음(chmod 755)과 맞아떨어집니다.
왜 입력이 잘못됐다고 표시되나요?
선택한 진법의 숫자 집합에 없는 문자가 포함되어 있기 때문입니다 — 예를 들어 2진수의 '2'나 16진수의 'G'. 16진수는 대소문자를 가리지 않고 앞뒤 공백은 무시되지만, 숫자 중간의 쉼표·공백·밑줄 같은 구분자는 허용되지 않습니다.

이 주제의 가이드

관련 도구