코드 페이지 949

그림으로 나타낸 CP949 인코딩의 구조

코드 페이지 949(CP949)는 마이크로소프트사가 도입한 코드 페이지이다. 본래는 KS C 5601의 완성형 한글을 표현한 코드 페이지였으나, 윈도우 95부터는 확장 완성형 혹은 통합형 한글 코드(Unified Hangul Code)이라는 명칭으로 확장되어 현대의 모든 한글을 수용하게 되었다. 마이크로소프트에서는 이 인코딩을 기반 문자 집합 이름인 "ks_c_5601-1987"로 사용하고 있다. 이 코드 페이지는 IANA에 등록되어 있지 않지만[1], W3C와 WHATWG의 인코딩 스펙에 EUC-KR이라는 이름으로 표준으로 지정되어 있다.[1]

CP949 인코딩은 EUC-KR의 확장이며, 하위 호환성이 있다.

  • 128보다 작은 바이트에 KS X 1003을 배당한다.
  • 128보다 크거나 같은 두 바이트에 KS X 1001을 배당한다. 각 글자는 행과 열에 128을 더한 코드값을 사용하여 2바이트로 표현된다. 행과 열 번호가 32부터 시작하기 때문에 실제로 이 문자 집합은 첫째/둘째 바이트가 161부터 254 범위에 있다.
  • 나머지 공간에 KS X 1001에 없는 8822자의 현대 한글을 가나다 순서대로 배당한다. 이 경우 첫째 바이트가 129부터 198까지이며, 둘째 바이트는 65부터 90까지(로마자 대문자), 97부터 122까지(로마자 소문자), 129부터 254까지의 범위이다. 단 첫째 바이트가 161 이상일 경우 KS X 1001과의 충돌을 막기 위해 둘째 바이트는 161 이상이 될 수 없다.
  • 한글 채움 문자의 부호값은 A4D4이다.

따라서 KS X 1001의 40-27에 배당된 "위"라는 글자는 CP949에서도 C0 A7라는 바이트 열로 표현된다. 한편 KS X 1001에 없는 "갘"이라는 글자는 KS X 1001에 없는 현대 한글 중 10번째이고 따라서 CP949에서 81 4A가 된다.

같이 보기

외부 링크

각주

  1. “WHATWG Encoding Standard”. 2019년 1월 28일에 확인함.