아스키 코드 변환

🔐 인코딩

문자를 ASCII 코드(10진수·16진수·2진수)로 변환하거나 코드 값을 다시 문자로 되돌리는 변환기입니다.

주요 ASCII 코드

A = 65
Z = 90
a = 97
z = 122
0 = 48
9 = 57
Space = 32
Enter = 13

💻 ASCII 변환기란?

ASCII는 0~127 사이 정수에 영문 알파벳·숫자·기호를 매핑한 7비트 문자 코드입니다. 1963년 ANSI X3.4 위원회가 표준화한 가장 오래된 텍스트 인코딩 중 하나로, 전신용 텔레타이프에서 출발한 만큼 0~31에 제어 코드가 들어 있어 지금도 \n(LF, 10), \r(CR, 13), \t(TAB, 9) 같은 형태로 그 흔적이 남아 있습니다. 이 도구는 문자열을 10진수, 16진수, 2진수 세 가지 표기로 보여주거나, 반대로 코드 시퀀스를 다시 텍스트로 복원합니다.

📊 ASCII 코드 구조

0-31: 제어 문자 (줄바꿈, 탭 등)
32-47: 특수문자 (공백, !, ", # 등)
48-57: 숫자 (0-9)
65-90: 대문자 (A-Z)
97-122: 소문자 (a-z)
127: DEL (삭제 제어문자)

🧠 외워두면 편한 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진수 표기)처럼 비트 단위 의미를 강조해야 할 때 가독성이 좋습니다.

관련 도구

광고