본문 바로가기

유니코드

(2)
[C#] Unicode에서 한글 초성/중성/종성에 대한 짧은 고찰 안녕하세요, 러시아에서 아주 가끔 코딩을 하는 개발자 윤진입니다. 유니코드를 뒤적뒤적 살펴보다가, 유니코드에 한글이 어떻게 매핑되어 있는지 궁금해졌습니다. 유니코드에 매핑된 문자를 확인하고 싶으면 유니코드 공식홈페이지를 찾으면 됩니다. 공식 홈페이지에 올라와있는 Unicode 9.0 Character Code Charts에는, 한글 자소와 완성형 한글이 45장에 걸쳐 빽빽하게 기록된 것을 볼 수 있습니다. 한글자소는 초성/중성/종성으로 나눠져 세 그룹으로 표현되어 있습니다. 현대 한글에서 사용하는 초성은, 'ㄱㄲㄴㄷㄸㄹㅁㅂㅃㅅㅆㅇㅈㅉㅊㅋㅌㅍㅎ'로 총 19자입니다. 그렇지만, 한글자소 테이블에는 위의 한글 외에도 기이한 형태의 자음이 복합된 초성이 포함되어 있습니다. 'ㅎ'에 이어서 'ㄴㄱ'이나 'ㄴㄴ',..
[C#] UTF-16의 캐릭터 크기에 대한 간단한 탐구 안녕하세요,러시아에 살고 있는 개발자 윤진입니다. C#을 비롯한 .Net 플랫폼에서는 문자를 인코딩하는 방식으로,Unicode Transformation Format인 UTF-16을 사용합니다. UTF-16은 기본적으로 16비트-2바이트를 취하지만, 항상 2바이트는 아닙니다.사상되는 문자의 종류에 따라 4바이트로 확장되기도 합니다. 2바이트로 표현되는 영역은 U+0000부터 U+FFFF까지입니다.U+0000은 제어 문자와 라틴 기본 영역에 속해있죠.U+0000 ~ U+007F128자제어 문자와 라틴 기본 U+FFFF는 특수 제어 문자 영역에 속해있습니다.U+FFF0 ~ U+FFFF16자특수 제어 문자 그렇다면, 4바이트 사상되는 U+000000~ 코드 이상의 문자는 무엇을 보고 4바이트 문자인지 판별할 ..