인코딩 · 2026년 7월 3일 · 읽는 시간 4분
ASCII 코드 변환, 외워서 하다가 틀리기 시작함
네트워크 프로그래밍 하다가 바이트 값이 어떤 문자인지 빠르게 확인이 필요한데, ASCII 표 외워서 하기엔 한계가 있다.
ASCII 변환이 필요한 상황
개발하다 보면 종종 필요하다:
- 네트워크 패킷 분석 → 바이트 값이 어떤 문자인지 확인
- 레거시 시스템 연동 → ASCII 코드로 데이터 주고받기
- 암호화/인코딩 로직 → 문자의 수치 확인
- C/C++ 문자 처리 → char 값 확인
- CTF 보안 문제 → ASCII 코드 해석
- 통신 프로토콜 → 제어 문자(CR, LF 등) 확인
A=65, a=97, 0=48 같은 기본값은 외우는데, 특수문자나 제어문자는 표 없이 기억하기 어렵다.
ASCII란
American Standard Code for Information Interchange의 약자다:
- 0~127 범위의 7비트 문자 집합
- 영문 대소문자, 숫자, 기본 특수문자, 제어문자 포함
- 현대 컴퓨터 문자 인코딩의 기반 (UTF-8도 ASCII 호환)
- 1963년 제정, 아직도 네트워크/시스템 프로그래밍에서 중요
주요 제어 문자 코드값:
- 9 → TAB (수평 탭)
- 10 → LF (줄바꿈, Linux/macOS)
- 13 → CR (캐리지 리턴, Windows CRLF의 앞부분)
- 27 → ESC (이스케이프)
- 32 → SPACE (공백)
- 127 → DEL (삭제)
그래서 만들었음
텍스트↔ASCII 코드 양방향 변환이 가능하다:
- 텍스트 → ASCII 코드 → 각 문자의 10진수 코드값
- 텍스트 → 16진수 → 16진수(hex) 코드값
- 텍스트 → 2진수 → 비트 단위 표현
- ASCII 코드 → 텍스트 → 숫자 배열 입력 → 문자열로 변환
표시 옵션:
- 구분자 선택 → 공백, 쉼표, 줄바꿈 등
- 진수 선택 → 10진수, 16진수, 8진수, 2진수
- 제어 문자 표시 → 이름으로 표시 (LF, CR 등)
ASCII 범위별 의미
코드값 범위를 알면 빠르게 판단할 수 있다:
- 0~31 → 제어 문자 (출력 안 됨, 특수 동작)
- 32 → 공백
- 33~47 → 특수문자 (!, ", #, $, %, &...)
- 48~57 → 숫자 (0~9)
- 58~64 → 특수문자 (:, ;, <, =, >, ?, @)
- 65~90 → 대문자 (A~Z)
- 91~96 → 특수문자 ([, \, ], ^, _, `)
- 97~122 → 소문자 (a~z)
- 123~127 → 특수문자 ({|}, ~, DEL)
대문자와 소문자는 코드값이 32 차이난다. a-A=32, b-B=32... 이 규칙이 비트 토글(5번 비트)과 연결된다.
실제로 써보니
좋은 점:
- 입력과 동시에 변환 → 빠름
- 10진수, 16진수, 2진수 한 화면에서 비교
- 제어 문자도 이름으로 표시 → 헷갈리지 않음
한계:
- 한글 등 비ASCII 문자는 ASCII 범위 초과 → 유니코드 변환 도구 따로 씀
- 확장 ASCII (128~255) 처리는 인코딩에 따라 다름
사용법
- 텍스트 또는 ASCII 코드 입력
- 변환 방향 선택
- 결과 확인 및 복사
- 끝
3초면 된다.
써보기
회원가입 없이 바로 쓸 수 있다.
#ASCII변환 #ASCII코드 #텍스트ASCII #문자코드변환 #개발도구 #인코딩도구