컴퓨터는 기본적으로 0과 1만 이해할 수 있습니다.
그렇다면 우리가 사용하는 문자(가, A, @ 등)는 어떻게 표현될까요?
이번 글에서는 문자 집합과 문자 인코딩 방식(ASCII, EUC-KR)을 중심으로 살펴봅니다.
1. 문자 집합(Character Set)
문자 집합이란 컴퓨터가 이해할 수 있는 문자들의 모음입니다.
- 예: 영어 알파벳, 숫자, 특수 문자, 한글 등
- 어떤 문자들을 포함할지는 문자 집합의 기준에 따라 달라짐
(예: ASCII는 영어 중심, EUC-KR은 한글 포함)
2. 문자 인코딩(Character Encoding)
문자 인코딩은
👉 문자를 0과 1로 이루어진 이진 코드로 변환하는 과정입니다.
예를 들어,
'A' → 01000001
'a' → 01100001
처럼 각각 특정한 비트 패턴이 할당됩니다.
3. 문자 디코딩(Character Decoding)
디코딩은 반대로
👉 0과 1로 저장된 정보를 사람이 읽을 수 있는 문자로 변환하는 과정입니다.
4. ASCII — 가장 기본적인 문자 인코딩
ASCII(아스키)는 초기 컴퓨터에서 사용된 가장 대표적인 문자 인코딩 방식입니다.
✔ ASCII 특징
- 영문 알파벳, 숫자, 특수 문자 등 128개의 문자 표현
- 하나의 문자를 표현하는 데 1바이트(8비트) 사용
- 이 중 1비트는 오류 검사를 위한 패리티 비트
- 7비트로 실제 문자를 표현 (2⁷ = 128개)
✔ ASCII 코드 예
- 'A' → 10진수 65 → 2진수 1000001
- 'a' → 10진수 97 → 2진수 1100001
아래 표처럼 10진수/16진수/문자 매핑으로 구성되어 있음:
5. 왜 ASCII만으로는 충분하지 않을까
ASCII는 영문자와 일부 특수문자만 포함하기 때문에
👉 한글, 일본어 등 비영어권 문자를 표현할 수 없음
그래서 한글 기반 인코딩 방식이 필요하게 되었고,
그중 하나가 바로 EUC-KR입니다.
6. EUC-KR — 한글을 표현하기 위한 인코딩 방식
EUC-KR은 KS X 1001, KS X 1003 문자 집합을 기반으로 한글을 표현할 수 있는 인코딩 방식입니다.
✔ EUC-KR의 구조
- ASCII 문자 → 1바이트
- 한글 문자 → 2바이트(16비트)
- 두 개의 16진수 조합으로 하나의 한글을 표현
- 즉, 한글 하나 = 2바이트 = 4자리 16진수
예)
- ‘한’ → 0xc7d0
- ‘글’ → 0xb1db
아래 표는 EUC-KR 코드표 일부이며,
c7d0 자리의 두 번째가 ‘한’,
b1d0 자리의 열두 번째가 ‘글’을 나타냄.
정리하면
이번 내용을 간단히 정리하면 다음과 같습니다:
- 문자 집합: 컴퓨터가 이해할 수 있는 문자 목록
- 문자 인코딩: 문자를 0과 1로 변환하는 방법
- ASCII: 128개의 영문 중심 문자 표현
- EUC-KR: 2바이트 기반의 한글 인코딩 방식
- 한글 같은 복잡한 문자를 표현하기 위해서는 ASCII 외의 인코딩 방식이 필요
'컴퓨터 과학' 카테고리의 다른 글
| [컴퓨터 구조] CPU - 인터럽트 (0) | 2025.11.23 |
|---|---|
| [컴퓨터 구조] CPU - 레지스터 (0) | 2025.11.23 |
| [컴퓨터 구조] 컴퓨터가 이해하는 정보 -명령어 (0) | 2025.11.23 |
| [컴퓨터 구조] 컴퓨터가 이해하는 정보 - 데이터 숫자 (0) | 2025.11.22 |
| 컴퓨터 과학 전체 구조 (0) | 2025.11.22 |