🔢 진법 변환기
2 / 8 / 10 / 16진수를 즉시 변환. 0x / 0b / 0o 접두사 지원, 비트 길이와 부호 있는 2의 보수 지원.
완전 무료
가입 불필요
브라우저 완결
5 개 언어
다크 모드
비트 표현
8-bit signed
8-bit unsigned
16-bit signed
16-bit unsigned
32-bit signed
32-bit unsigned
📖 자주 걸리는 지점
2 / 8 / 10 / 16 진수를 상호 변환합니다. 0x / 0b / 0o 접두사는 자동으로 해석합니다. 실무에서 진수 변환이 필요한 장면은 퍼미션, 비트 플래그, 색상 코드, 문자 코드 중 하나인 경우가 대부분이며 각각 자릿수의 의미가 다릅니다. 수치로서의 변환이 옳아도 의미 해석을 틀리면 결과는 쓸 수 없습니다.
| 사례 | 무슨 일이 일어나는가 | 어떻게 하면 되는가 |
|---|---|---|
| 퍼미션 755 를 10진수로 다룬다 | chmod 755 의 755 는 8진수이며 10진수 755(8진수로는 1363)와는 별개입니다. 세 자리가 각각 소유자 · 그룹 · 기타를 나타내고 각 자리는 read=4 / write=2 / execute=1 의 합입니다. 755 는 111 101 101, 즉 소유자는 전부, 나머지는 읽기와 실행만이라는 뜻입니다. |
입력할 때 0o755 라고 쓰면 8진수로 해석됩니다. 프로그램 안에서도 같은 함정이 있습니다 — 파이썬의 os.chmod(path, 755) 는 10진수 755 로 전달되어 의도와 전혀 다른 권한이 됩니다. 반드시 0o755 라고 쓰세요. |
| 음수나 비트 연산 결과가 맞지 않는다 | 컴퓨터는 음수를 2의 보수로 표현합니다. -1 은 8비트라면 11111111(0xFF), 32비트라면 0xFFFFFFFF 이며 몇 비트 폭으로 보느냐에 따라 표현이 완전히 달라집니다. 단순한 진수 변환은 마이너스 기호 + 절댓값 표기가 되므로 메모리 덤프나 레지스터 값과 대조하면 일치하지 않습니다. |
먼저 비트 폭을 정하세요. 8 / 16 / 32 / 64 중 무엇으로 볼지가 정해지지 않으면 애초에 정답이 하나로 정해지지 않습니다. 자바스크립트의 비트 연산은 모두 32비트 부호 있는 정수로 잘리므로 1 << 31 은 양수 2147483648 이 아니라 음수 -2147483648 이 됩니다. 64비트가 필요하면 BigInt 를 쓰세요. |
| 16진 색상 코드를 숫자로 더한다 | #FF8800 은 하나의 수치가 아니라 R / G / B 3개의 독립된 1바이트입니다. 전체를 10진수 16746496 으로 다뤄 밝게 하려고 더하면 자리 올림이 옆 채널로 새어 색상 자체가 바뀝니다. 초록을 더한 셈인데 빨강으로 올라가는 식으로 깨집니다. |
채널별로 나누어 계산하고 각각 0~255 로 클램프한 뒤 되돌립니다. 명도나 채도만 만지고 싶다면 HSL 로 변환한 뒤 L 이나 S 를 움직이는 편이 자연스럽습니다. 색상 코드 변환으로 HEX ↔ RGB ↔ HSL 을 오갈 수 있습니다. |
16진수가 널리 쓰이는 것은 한 자리가 정확히 4비트에 대응하기 때문입니다. 1바이트가 반드시 두 자리로 표현되므로 메모리 내용도 색도 문자 코드도 자릿수가 맞습니다. 8진수가 유닉스 퍼미션에 남아 있는 것도 같은 이유로, 3비트씩 끊으면 read / write / execute 3가지가 딱 한 자리에 들어갑니다. 반대로 10진수는 2의 거듭제곱이 아니어서 비트 단위 이야기와 궁합이 나쁘고 경계값이 깔끔한 숫자가 되지 않습니다.
📖 사용법
-
1
임의 칸에 숫자 입력임의의 DEC, HEX, BIN, OCT 필드에 숫자를 입력하세요. 0x, 0b, 0o 접두사도 지원합니다.
-
2
다른 진법으로 즉시 변환입력하는 동시에 나머지 3개 진법 표현이 자동 업데이트됩니다.
-
3
비트 표현 확인하단 비트 패널에서 8/16/32비트 부호 있는 및 없는 표현을 확인할 수 있습니다.
❓ 자주 묻는 질문
음수도 입력할 수 있나요?
10진수 필드에 음수를 입력할 수 있습니다. 비트 패널에서 2의 보수 표현을 확인하세요.
매우 큰 수도 변환할 수 있나요?
네, JavaScript BigInt를 사용하므로 임의 정밀도 정수를 처리할 수 있습니다.
쉼표나 언더스코어 구분자를 사용할 수 있나요?
네. 쉼표, 언더스코어, 공백은 자동으로 제거됩니다.
🐛 이 도구에서 문제가 발생했나요?
무료 · 가입 불필요. 재현 절차만이라도 도움이 됩니다. 보고는 운영자에게 직접 전달되어 개선에 사용됩니다.
✅
보고 감사합니다!
운영자에게 전달되었습니다. 개선에 사용됩니다.