KS X 1001

위키백과 ― 우리 모두의 백과사전.

그림으로 나타낸 KS X 1001 문자 집합의 구조
그림으로 나타낸 KS X 1001 문자 집합의 구조

KS X 1001한국 산업 규격으로 지정된 한국어 문자 집합으로, 정식 규격명은 "정보 교환용 부호계 (한글 및 한자)"이며 옛 이름인 KS C 5601로도 알려져 있다. 1974년에 처음으로 제정되었으며 2002년에 개정된 KS X 1001:2002가 최신이다.

KS X 1001은 유니코드를 제외하고 대한민국에서 사용되는 거의 유일한 문자 집합이다. KS X 1001 기반의 문자 인코딩으로는 EUC-KR(완성형), CP949, 2바이트 상용 조합형 등이 있다.

목차

[편집] 구성

KS X 1001은 전형적인 94×94 문자 집합이며, 각 행들은 다음과 같이 구성되어 있다.

  • 0x21 ~ 0x2C: 특수 문자 영역 (문장 부호, 그림 문자, 한글 자모, 선 문자, 히라가나, 가타카나, 그리스 문자, 키릴 문자 등)
  • 0x30 ~ 0x48: 한글 영역. 자주 쓰이는 2350자만 가나다 순서대로 배열했다. 하지만 이것 때문에 다음[1]과 같은 문제가 생겼다.
  • 0x49: 사용자 정의 영역 A
  • 0x4A ~ 0x7D: 한자 영역. 4888자를 한글 독음 순서대로 배열했으며, 독음이 다르고 모습이 같은 한자는 중복되어 있다.
  • 0x7E: 사용자 정의 영역 B

특수 문자 영역은 개정판마다 계속 추가되고 있다. KS X 1001:1998에서는 ®(등록 상표 기호), €(유로화)가, KS X 1001:2002에서는 우편 기호("우"에 동그라미를 친 기호: U+327E)가 추가되었다.

한글 영역에는 일반적인 입력 방법으로 입력할 수 없는 문자가 다섯 개 있다. (뢨, 썅, 쏀, 쓩, 쭁[2]) 이들 문자는 받침이 없는 문자("쓩"의 경우 "쓔")가 한글 영역에 배당되어 있지 않기 때문에 아예 입력할 수 없거나 프로그램이 특수한 처리를 해 줘야 입력할 수 있다. 이런 현상은 문자 집합의 버그로 보이며, 공식적인 이유는 알려져 있지 않으나 적어도 KS X 1001:2002에서는 이 현상에 대한 설명이 추가되었다.

[편집] 한글 채움 문자

일반적인 생각과는 다르게 KS X 1001은 모든 현대 한글을 표현할 수 있다. 즉, 한글 채움 문자(24-54, EUC-KR에서는 A4 D4)를 사용해서 "(채움) 초성 중성 종성"과 같이 한글 영역에 들어 있지 않은 한글을 표시하는 것이 가능하다. 예를 들어 "(채움)ㅆㅠ(채움)"은 KS X 1001에서 나타낼 수 없는 "쓔"라는 글자를 나타낸다. 하지만 이 방법은 마이크로소프트 윈도를 비롯한 대부분의 구현이 지원하지 않으며, 모질라와 같은 몇몇 프로그램에서만 지원하기 때문에 사실상 사용되지 않고 있다.

[편집] 단점

KS X 1001에 모든 현대 한글을 표현할 수 있는 방법이 존재하는데도 대부분의 프로그램들이 구현하지 않고 있으며, 구현한다 하여도 코드 순서대로 정렬했을 때 한글이 제대로 정렬되지 않고 처리도 쉽지 않기 때문에 거의 사용되지 않는다. 따라서 KS X 1001은 사실상 2350자의 한글만 지원하기 때문에 모든 현대 한글을 제대로 표현할 수 없다는 비판이 제기되었다. 또한 2350자 바깥의 한글을 처리하는 방법이 프로그램마다 여러 가지로 나뉘면서 서로 다른 프로그램 사이에서 인코딩의 호환성이 보장되지 않는 문제가 생기기도 했다. (이 경우 CP949의 확장 한글을 쓰거나, 뷁과 같은 SGML의 문자 번호 참조를 사용한다.)

그 외에 다섯 글자를 입력할 수 없는 문자 집합의 버그나, 한글 독음이 다르고 모습이 같은 한자가 중복되어 있기 때문에 나타나는 처리상의 문제도 있다. 후자의 경우 유니코드에 이런 특성이 고려되어 모든 중복된 한자가 유니코드 호환성 영역에 수록되기도 했다.

또한 한글 코드에 한글보다 한자가 더 많이 들어갔다고 비판하는 사람도 있다.

[편집] 같이 보기

[편집] 주석

  1. '믜' 자 고유 한국어 이름 곤욕
  2. 휴대폰의 경우 '뛔' 또한 입력할 수 없다. '뚸'가 없기 때문이다.

[편집] 바깥 고리

다른 언어