아스키 코드 변환
🔐 인코딩문자를 ASCII 코드(10진수·16진수·2진수)로 변환하거나 코드 값을 다시 문자로 되돌리는 변환기입니다.
주요 ASCII 코드
💻 ASCII 변환기란?
ASCII는 0~127 사이 정수에 영문 알파벳·숫자·기호를 매핑한 7비트 문자 코드입니다. 1963년 ANSI X3.4 위원회가 표준화한 가장 오래된 텍스트 인코딩 중 하나로, 전신용 텔레타이프에서 출발한 만큼 0~31에 제어 코드가 들어 있어 지금도 \n(LF, 10), \r(CR, 13), \t(TAB, 9) 같은 형태로 그 흔적이 남아 있습니다. 이 도구는 문자열을 10진수, 16진수, 2진수 세 가지 표기로 보여주거나, 반대로 코드 시퀀스를 다시 텍스트로 복원합니다.
📊 ASCII 코드 구조
🧠 외워두면 편한 ASCII 트릭
- 대소문자 변환은 32 차이: 'A'(65)와 'a'(97)의 거리는 32. 비트 단위로는 6번째 비트만 다르므로
code ^ 0x20한 줄로 대소문자를 뒤집을 수 있습니다. - 숫자 문자를 정수로:
'9' - '0' = 9처럼 ASCII 코드 차이로 자릿수를 뽑아냅니다. atoi 구현의 핵심 트릭입니다. - 알파벳인지 검사: 65~90 또는 97~122 범위 검사로 한 줄에 끝납니다. 정규식보다 훨씬 빠르고, 임베디드 환경에서 자주 보입니다.
- HTTP 헤더 파싱:
:(58), 공백(32),\r\n(13, 10) 같은 구분자가 모두 ASCII이므로 바이트 단위 파서가 가능합니다.
💡 알아두면 좋은 점
유니코드의 첫 128자는 ASCII와 그대로 같습니다. 영문만 다룬다면 두 표 차이를 거의 느끼지 않습니다. 한글·이모지처럼 그 너머의 문자가 등장할 때만 UTF-8 같은 별도 인코딩이 필요합니다.
자주 묻는 질문
ASCII와 유니코드의 차이는?▼
ASCII는 128개의 문자만 다루는 7비트 표인 반면, 유니코드는 15만 자 이상을 포괄하는 거대한 카탈로그입니다. 다만 유니코드의 첫 128자는 ASCII와 그대로 같아서 영문만 다룬다면 두 표 차이를 거의 느끼지 않습니다. 한글, 이모지처럼 그 너머의 문자가 등장할 때만 UTF-8 같은 별도 인코딩이 필요합니다.
한글도 ASCII로 변환할 수 있나요?▼
엄밀히 말해 불가능합니다. ASCII 범위(0~127) 안에 한글이 없기 때문이며, 이 도구로 한글을 입력하면 자바스크립트 내부의 UTF-16 코드 유닛 값(예: "가" → 44032)이 출력됩니다. 한글에 맞는 표현이 필요하면 사이드바의 유니코드 변환기를 사용하세요.
10진수·16진수·2진수, 어느 걸 써야 하나요?▼
사람이 읽기엔 10진수가 가장 자연스럽고, 메모리 덤프나 네트워크 패킷 분석에는 16진수가 표준입니다. 2진수는 비트 마스크나 권한 플래그(예: 755의 8진수 표기)처럼 비트 단위 의미를 강조해야 할 때 가독성이 좋습니다.