프로그래밍 수업에서 10진수 42를 2진수로 바꾸라는 문제가 나왔다. 2로 나누고 나머지를 적고, 다시 나누고 적고. 한 자리만 실수해도 답이 통째로 틀린다. 검산할 수단이 없으면 맞게 풀었는지도 확신이 안 선다.
2진수, 8진수, 10진수, 16진수 차이
| 진법 | 사용 숫자 | 주 사용처 | 10진수 42 표현 |
|---|---|---|---|
| 2진수 | 0, 1 | 컴퓨터 내부 연산 | 101010 |
| 8진수 | 0~7 | 유닉스 파일 권한 | 52 |
| 10진수 | 0~9 | 일상 숫자 | 42 |
| 16진수 | 0~9, A~F | 색상 코드, 메모리 주소 | 2A |
진법 변환하는 법
온라인 진법 변환기에 숫자를 하나 입력하면 나머지 진법으로 자동 변환된 값이 동시에 나타난다. 2~36진법까지 지원하고, 문자의 ASCII 코드 변환도 가능하다.
- 변환할 숫자를 해당 진법 입력창에 넣는다 (예: 10진수 칸에 42 입력).
- 2진수, 8진수, 16진수 칸에 결과가 동시에 표시된다.
- 필요한 값 옆의 복사 버튼으로 바로 가져다 쓴다.
실무에서 진법이 쓰이는 경우
- 웹 개발 — CSS 색상 코드(#FF5733)가 16진수다. RGB 값과 변환할 일이 자주 생긴다.
- 네트워크 — IP 주소의 서브넷 마스크를 2진수로 바꿔야 네트워크 범위를 계산할 수 있다.
- 리눅스 권한 설정 — chmod 755 같은 명령에서 각 숫자가 8진수 기반이다.
- 시험/과제 — 컴퓨터공학, 정보처리기사 시험에서 진법 변환 문제가 단골로 나온다.
손으로 풀어보면서 원리를 익히는 건 중요하지만, 검산이나 실무 작업에서는 도구를 쓰는 게 실수를 줄이는 확실한 방법이다.