진법 변환기

2진수, 8진수, 10진수, 16진수를 실시간으로 상호 변환합니다.

빠른 참조표

10진수 2진수 8진수 16진수
0000000
1000111
81000108
10101012A
15111117F
16100002010
25511111111377FF

진법 변환기란?

진법 변환기는 2진수, 8진수, 10진수, 16진수 사이를 실시간으로 상호 변환해주는 도구입니다. 프로그래밍을 하거나 컴퓨터 과학을 공부할 때 진법 간 변환은 피할 수 없는 과정인데, 이 도구를 사용하면 수동 계산 없이 빠르게 결과를 확인할 수 있습니다. 어떤 진법 필드에 값을 입력하든 나머지 진법 값이 동시에 계산되어 편리합니다.

이용 가이드

  1. 변환하려는 진법의 입력 필드에 숫자를 입력합니다
  2. 다른 진법의 값이 즉시 자동으로 변환되어 표시됩니다
  3. 결과 옆의 복사 아이콘을 클릭하면 클립보드에 복사됩니다
  4. 다른 진법 필드에서 역방향 변환도 가능합니다

핵심 기능

  • 2진수, 8진수, 10진수, 16진수 실시간 상호 변환
  • 어떤 필드에서든 입력하면 나머지가 자동 변환
  • 복사 버튼으로 변환 결과를 클립보드에 바로 복사
  • 잘못된 입력값 자동 감지 및 오류 안내
  • 대소문자 구분 없이 16진수 입력 가능 (a-f, A-F)

이런 상황에서 유용해요

  • 프로그래밍 중 메모리 주소나 비트 연산 값을 확인할 때
  • 웹 개발에서 16진수 색상 코드(#FF5733)를 RGB 값으로 변환할 때
  • 네트워크 설정에서 서브넷 마스크나 IP 주소를 2진수로 변환할 때
  • Unix/Linux 파일 권한(chmod 755)을 8진수로 이해할 때
  • 컴퓨터 과학 수업에서 진법 변환 문제를 풀거나 검증할 때
  • 임베디드 시스템이나 하드웨어 디버깅 시 레지스터 값 확인

궁금한 점 모음

Q: 컴퓨터는 왜 2진수를 사용하나요?

컴퓨터 내부의 트랜지스터는 전기 신호의 켜짐(1)과 꺼짐(0) 두 가지 상태만 구분할 수 있습니다. 이 때문에 모든 데이터를 0과 1의 조합인 2진수로 처리합니다.

Q: 16진수는 어디에서 주로 사용되나요?

웹 색상 코드(#FF0000은 빨강), 메모리 주소, MAC 주소, 바이너리 데이터 표현 등 IT 분야 전반에서 사용됩니다. 2진수 4자리를 16진수 1자리로 압축할 수 있어 가독성이 좋습니다.

Q: 8진수는 어디에 활용하나요?

주로 Unix/Linux의 파일 권한(chmod) 설정에서 사용됩니다. 예를 들어 chmod 755는 소유자에게 읽기/쓰기/실행 권한, 그룹과 기타 사용자에게 읽기/실행 권한을 부여합니다.

Q: 음수도 변환할 수 있나요?

현재 이 도구는 양의 정수만 지원합니다. 음수를 2진수로 표현하려면 2의 보수(Two's Complement) 방식을 사용하는데, 별도의 비트 수 설정이 필요합니다.

Q: 진법 변환 원리가 궁금합니다

10진수 13을 2진수로 변환하는 예를 들면, 13을 2로 계속 나누어 나머지를 역순으로 읽습니다. 13/2=6 나머지 1, 6/2=3 나머지 0, 3/2=1 나머지 1, 1/2=0 나머지 1이므로 결과는 1101입니다.

Q: 0xFF 같은 접두사를 입력해도 되나요?

접두사(0x, 0b, 0o)는 입력하지 않아도 됩니다. 해당 진법 필드에 숫자만 입력하면 자동으로 인식합니다.

Q: 변환 가능한 최대 숫자는 얼마인가요?

JavaScript의 안전한 정수 범위인 2^53 - 1(약 9,007조)까지 정확하게 변환됩니다. 이보다 큰 수는 정밀도 손실이 발생할 수 있습니다.

Q: 모바일에서도 사용할 수 있나요?

네, 반응형으로 설계되어 스마트폰, 태블릿에서도 동일하게 사용 가능합니다. 모든 처리는 브라우저에서 이루어지며 서버로 데이터가 전송되지 않습니다.

알아두면 좋은 점

  • 2진수는 0과 1만, 8진수는 0-7만 입력 가능합니다. 범위를 벗어나면 오류가 표시됩니다
  • 16진수에서 A=10, B=11, C=12, D=13, E=14, F=15를 의미합니다
  • 매우 큰 수를 변환할 경우 JavaScript 정수 범위(2^53-1)를 초과하면 정밀도가 떨어질 수 있습니다
  • 소수점이 포함된 수는 지원하지 않으므로 정수만 입력하세요
  • 0x, 0b, 0o 같은 접두사 없이 숫자만 입력합니다