2진수 8진수 변환기
8진수는 Unix 파일 권한(chmod 755), 오래된 PDP 시대의 매뉴얼, 일부 마이크로컨트롤러 툴체인에서 여전히 쓰입니다. 이 변환기는 어떤 2진수 문자열이든 오른쪽부터 비트를 세 개씩 묶고, 각 묶음을 0부터 7 사이의 8진수 자리로 대응시킵니다. 0755를 8진수 리터럴로 취급하는 언어를 위해 앞자리 0을 붙이는 옵션도 제공합니다.
2진수를 8진수로 변환하는 방법
-
1
2진수 값 입력
공백은 제거됩니다. 길이는 상관없으며, 가장 왼쪽 묶음은 자동으로 세 비트가 되도록 앞에 0이 채워집니다.
-
2
오른쪽부터 세 비트씩 묶기
`111101100`은 `111 101 100`이 됩니다. 묶는 방향이 중요하며, 항상 오른쪽에서 왼쪽으로 묶습니다.
-
3
세 비트마다 대응시키기
000 = 0, 001 = 1, 010 = 2, … 111 = 7. 모든 세 비트는 정확히 하나의 8진수 자리로 대응됩니다.
-
4
결과 확인 및 복사
그대로의 숫자(`754`), 앞자리 0(`0754`), 또는 Python 3 및 Rust 호환 `0o`(`0o754`) 중에서 선택하세요.
세 비트와 8진수 대응표
| 2진수 | 8진수 |
|---|---|
| 000 | 0 |
| 001 | 1 |
| 010 | 2 |
| 011 | 3 |
| 100 | 4 |
| 101 | 5 |
| 110 | 6 |
| 111 | 7 |
예시: Unix 권한
rwxr-xr-x는 소유자에게 읽기/쓰기/실행 권한이 있고, 그룹과 기타 사용자에게는 읽기/실행 권한이 있다는 뜻입니다. 2진수로는 111 101 101이고, 이는 곧바로 8진수 755로 묶입니다. chmod에 전달하는 바로 그 숫자입니다.
8진수가 유용한 경우
- 파일 권한:
chmod 644,umask 022,stat -c %a는 모두 8진수로 표현합니다. - 이스케이프 시퀀스: C의
\100은@(10진수 64)를 나타내는 8진수입니다. - 오래된 기계어 코드: PDP-8, PDP-11과 초기 DEC 문서는 워드 크기가 3비트의 배수였기 때문에 명령 코드를 8진수로 나열합니다.
- 시각적 명료함: 세 비트 단위 묶음은 16진수처럼 많은 문자를 쓰지 않고도 2진수보다 빠르게 읽힙니다.
주의할 점
- C에서는 앞자리 0이 8진수를 뜻함:
0755는 8진수 755(= 10진수 493)이고,755는 10진수 755입니다. 붙여 넣기 전에 사용하는 언어를 확인하세요. - JavaScript는 옛 8진수 표기를 없앰: strict 모드는
0755를 거부합니다. 대신0o755를 사용하세요. - 묶는 방향: 왼쪽에서 오른쪽으로 묶으면 길이가 3의 배수가 아닌 비트열에서 잘못된 답이 나옵니다.
자주 묻는 질문
권한 플래그가 역할(소유자, 그룹, 기타)마다 읽기, 쓰기, 실행이라는 깔끔한 세 묶음으로 오기 때문입니다. 세 비트마다 8진수 자리 하나에 1대1로 대응되어 rwxr-xr-x가 한 단계로 755처럼 읽힙니다.
C, Perl, 셸에서는 앞자리 0을 사용하세요. Python 3, Rust, Swift에서는 0o를 사용합니다. 명령줄의 chmod에는 접두사 없이 사용하세요.
음수에는 부호 있는 비트 폭(2의 보수)이 필요합니다. 먼저 비트 폭을 지정하세요. 그렇지 않으면 변환기는 모든 입력을 부호 없는 값으로 취급합니다.
아니요. 변환기가 가장 왼쪽 묶음을 세 비트가 되도록 앞에 0을 채웁니다. 1111은 001 111이 되고, 8진수로는 17입니다.
관련 도구
JSON 포매터
JSON을 붙여넣어 2칸 또는 4칸 들여쓰기로 읽기 좋게 만들고, compact 출력으로 압축하거나 결과를 복사하기 전에 구문을 빠르게 확인하세요.
HEX 색상 선택기
색상을 눈으로 선택하고 HEX, RGB, HSL, HSV, CMYK 값과 흰색·검정 대비를 바로 확인하세요.
색상 팔레트 생성기
기준 HEX 색상에서 단색, 유사색, 보색, 삼색 또는 사색 팔레트를 만들고 바로 복사할 수 있는 CSS 변수를 내보냅니다.
랜덤 색상 생성기
1개부터 50개까지 랜덤 HEX 색상을 만들고, 색상 견본을 확인한 뒤 CSS, 테스트 또는 팔레트 탐색에 쓸 코드를 복사하세요.
랜덤 색상 팔레트 생성기
2~15개의 색상으로 랜덤 팔레트를 만들고, 비비드, 파스텔, muted, dark 스타일을 선택한 뒤 HEX 코드나 CSS 변수를 복사하세요.
랜덤 영어 글자 생성기
A-Z 영어 글자를 무작위로 생성합니다. 개수와 대문자, 소문자, 혼합 대소문자를 선택해 게임, 과제, 수업 활동에 활용하세요.