ASCII와 유니코드 코드 포인트란?
컴퓨터는 모든 문자를 숫자로 저장합니다. 각 문자에 고유한 번호를 부여한 규칙이 문자 인코딩 표준이며, ASCII와 유니코드는 오늘날 가장 널리 쓰이는 두 가지 표준입니다. 이 도구를 사용하면 문자와 코드 값을 양방향으로 즉시 조회할 수 있습니다.
ASCII 코드 기초
ASCII(American Standard Code for Information Interchange)는 1963년에 제정된 7비트 문자 코드로, 0~127번까지 128개 문자를 정의합니다. 영문 대문자 A는 65번, 소문자 a는 97번이며, 숫자 0은 48번입니다. 대소문자 차이는 정확히 32로 일정해, 비트 연산으로 대소문자를 쉽게 전환할 수 있습니다. 0~31번과 127번은 개행(10), 탭(9), Null(0) 등의 제어 문자입니다.
유니코드(Unicode)와 코드 포인트
유니코드는 전 세계 모든 언어와 기호를 하나의 체계로 통합한 국제 표준입니다. U+0000부터 U+10FFFF까지 약 110만 개의 코드 포인트를 제공하며, 현재 15만 개 이상의 문자가 할당되어 있습니다. 한글 음절은 U+AC00(가)~U+D7A3(힣) 구간에 11,172자, 이모지는 주로 U+1F300 이후 범위에 위치합니다.
활용 예시
웹 개발 시 HTML 특수문자를 엔티티(A = A) 형태로 쓸 때 코드 포인트가 필요합니다. CSS content 속성에서는 역슬래시 표기(\0041)를 사용합니다. Python에서는 ord('A')로 코드 값을, chr(65)로 문자를 얻습니다. JavaScript에서는 'A'.codePointAt(0)과 String.fromCodePoint(65)가 대응 함수입니다. 정규식에서 유니코드 범주(\p{L} 등)를 사용할 때도 코드 범위 이해가 필요합니다.
자주 묻는 질문
- UTF-8과 유니코드의 차이는 무엇인가요?
- 유니코드는 문자에 번호를 매기는 표준이고, UTF-8은 그 번호를 실제 바이트로 저장하는 인코딩 방식입니다. UTF-8은 ASCII와 호환되며 한글 1자는 보통 3바이트로 저장됩니다.
- BOM(Byte Order Mark)이란 무엇인가요?
- BOM은 파일 맨 앞에 붙는 U+FEFF 코드로, 파일의 바이트 순서와 인코딩 방식을 알려주는 마커입니다. UTF-8 파일에서는 보통 불필요하지만 일부 Windows 프로그램에서 사용합니다.