진법 변환기
2진수, 8진수, 10진수, 16진수 간 변환, 2-36 사용자 정의 진법 지원
어떤 필드에든 값을 입력하면 다른 모든 진법으로의 변환 결과를 즉시 확인할 수 있습니다.
2에서 36까지의 모든 진법 간에 변환합니다.
진법 변환기 문서
진법(기수)이란?
진법 또는 기수는 위치 기수법에서 숫자를 나타내는 데 사용되는 고유한 숫자의 개수를 정의합니다. 일상생활에서 가장 흔한 진법은 0-9 숫자를 사용하는 10진법(기수 10)입니다. 컴퓨터는 주로 2진법(기수 2)을 사용하며, 프로그래머는 이진 데이터를 더 간결하게 표현하기 위해 16진법(기수 16)과 8진법(기수 8)을 자주 사용합니다.
일반적인 진법 시스템
| 진법 | 이름 | 숫자 | 일반적인 용도 |
|---|---|---|---|
| 2 | 2진수 | 0, 1 | 디지털 회로, 컴퓨터 메모리, 기계어 코드 |
| 8 | 8진수 | 0-7 | Unix 파일 권한, 레거시 컴퓨팅 시스템 |
| 10 | 10진수 | 0-9 | 일상 수학, 사람이 읽을 수 있는 숫자 |
| 16 | 16진수 | 0-9, A-F | 메모리 주소, 색상 코드(CSS/HTML), 바이트 표현 |
진법 변환 원리
한 진법에서 다른 진법으로 숫자를 변환하는 것은 두 가지 주요 단계로 이루어집니다:
- 원본 숫자를 10진수(기수 10)로 변환: 각 숫자에 위치 값(진법^위치)을 곱하고 모든 값을 합산
- 반복 나눗셈을 사용하여 10진수 결과를 대상 진법으로 변환: 대상 진법으로 나누고 나머지를 수집
- 나머지를 역순으로 읽어 대상 진법의 최종 결과를 얻음
변환 예시
2진수 1101 → 10진수: (1×8) + (1×4) + (0×2) + (1×1) = 13
각 2진수 자릿수 위치는 2의 거듭제곱을 나타냅니다: 오른쪽에서 왼쪽으로, 2⁰=1, 2¹=2, 2²=4, 2³=8 등.
빠른 참조 표 (0-15)
| 10진수 | 2진수 | 8진수 | 16진수 |
|---|
일반적인 사용 사례
- 프로그래밍: 메모리 주소 디버깅, 비트 연산 이해, 저수준 데이터 작업
- 웹 개발: CSS/HTML 색상 코드를 RGB 10진수와 16진수 형식 간에 변환
- 네트워킹: 다양한 형식의 IP 주소, 서브넷 마스크, MAC 주소 이해
- 디지털 전자공학: 논리 회로 분석, 2진 산술 이해
- 데이터 분석: 인코딩된 데이터 작업, 바이너리 파일 형식 분석
팁과 요령
- 16진수 A-F는 10진수 값 10-15를 나타냅니다. 0xFF는 10진수로 255와 같습니다.
- 각 16진수 숫자는 정확히 4개의 2진수(비트)를 나타내어 16진수는 2진수의 편리한 약어가 됩니다.
- 이 도구는 임의 정밀도를 위해 BigInt를 사용하여 정밀도 손실 없이 매우 큰 숫자를 변환할 수 있습니다.
자주 묻는 질문
수의 진법이란 무엇이고 진법 변환은 어떻게 작동하나요?
진법(기수)은 숫자를 표현하는 데 사용되는 고유한 수자의 개수를 정의합니다. 10진법(base 10)은 0-9를 사용하고, 2진법(base 2)은 0과 1만을 사용하며, 16진법(base 16)은 0-9와 A-F를 사용합니다. 변환하려면 10진수 값을 목표 진법으로 반복 나누어 나머지를 모으거나, 먼저 10진수로 변환한 다음 목표 진법으로 변환합니다.
프로그래머들이 16진법을 자주 사용하는 이유는 무엇인가요?
16진법은 간결하고 2진법과 명확하게 매핑됩니다. 각 16진수 숫자는 정확히 4비트(니블)를 나타냅니다. 메모리 주소, 색상 코드, 바이트 값을 한눈에 알 수 있습니다. 8비트 바이트(0-255)는 정확히 2자리 16진수로 표현되지만, 2진법으로는 8자리가 필요합니다. 메모리 덤프, 네트워크 패킷, CPU 레지스터는 모두 16진법으로 읽는 것이 훨씬 쉽습니다.
2진법, 8진법, 16진법의 차이는 무엇인가요?
세 가지 모두 서로 다른 진수를 사용하는 위치 기수법입니다. 2진법(base 2)은 0과 1만 사용하며 트랜지스터의 작동 방식과 유사합니다. 8진법(base 8)은 0-7 숫자를 사용하며 파일 권한(예: chmod 755)을 위해 구형 Unix 시스템에서 일반적으로 사용되었습니다. 16진법(base 16)은 현재 저수준 프로그래밍, 색상 코드, 메모리 표현에 가장 흔히 사용됩니다.
음수를 2진수로 어떻게 변환하나요?
가장 일반적인 방법은 2의 보수이며, 거의 모든 현대 CPU가 사용합니다. 2의 보수 구하기: (1) 절댓값을 2진수로 쓰기, (2) 모든 비트 반전(1의 보수 취하기), (3) 1 더하기. 예를 들어, 8비트 2의 보수에서 -5는 11111011입니다. 이 도구는 부호 없는 정수를 변환합니다. 부호 있는 수나 2의 보수 연산에는 전용 비트 연산 계산기를 사용하세요.
Base32 또는 Base58 인코딩이란 무엇인가요?
Base32는 26개의 문자와 2-7 숫자, 합계 32개의 기호를 사용하며, 0/O나 1/l처럼 시각적으로 혼동되는 문자를 피합니다. Base58(비트코인 주소에 사용됨)는 58자 알파벳을 사용하며 0, O, I, l을 제거합니다. 이러한 인코딩은 최대의 압축률보다 가독성과 오류 내성이 더 중요한 경우에 사용됩니다.