컴퓨터 지식 네트워크 - 컴퓨터 프로그래밍 - 유니코드란 무엇입니까?

유니코드란 무엇입니까?

유니코드는 전 세계의 모든 텍스트와 기호를 수용할 수 있는 국제기구에서 개발한 문자 인코딩 체계입니다. 유니코드는 0-0x10FFFF 숫자를 사용하여 이러한 문자를 매핑하며 최대 1114112자 또는 1114112 코드 포인트를 수용할 수 있습니다. 코드 포인트는 문자에 할당할 수 있는 숫자입니다. UTF-8, UTF-16 및 UTF-32는 모두 숫자를 프로그램 데이터로 변환하기 위한 인코딩 체계입니다.

유니코드 문자 집합은 UCS(Unicode Character Set)로 축약됩니다. 초기 유니코드 표준은 UCS-2 및 UCS-4라고 불렸습니다. UCS-2는 2바이트로 인코딩되고, UCS-4는 4바이트로 인코딩됩니다. UCS-4는 가장 높은 비트가 0인 최상위 바이트에 따라 2^7=128 그룹으로 나뉩니다. 각 그룹은 다음으로 높은 바이트에 따라 256개의 평면으로 나뉩니다. 각 평면은 세 번째 바이트에 따라 256개의 행으로 나뉘며, 각 행에는 256개의 코드 포인트(셀)가 있습니다. 그룹 0의 평면 0을 BMP(Basic Multilingual Plane)라고 합니다. UCS-2는 UCS-4의 BMP에서 처음 2개의 0바이트를 제거하여 얻습니다.

각 평면에는 2^16=65536개의 코드 포인트가 있습니다. 유니코드 프로젝트는 총 17*65536=1114112 코드 포인트의 17개 평면을 사용합니다. 유니코드 5.0.0 버전에는 238605개의 정의된 코드 포인트만 있으며 평면 0, 평면 1, 평면 2, 평면 14, 평면 15 및 평면 16에 배포됩니다. 그 중 평면 15와 평면 16은 각각 65534 코드 포인트를 차지하는 두 개의 개인 영역(개인 사용 영역)만 정의하며, 이는 각각 0xF0000-0xFFFFD 및 0x100000-0x10FFFD입니다. 소위 전용 영역은 모든 사람이 커스텀 캐릭터를 넣을 수 있도록 예약된 영역으로, 줄여서 PUA라고 할 수 있습니다.

평면 0에는 6400개의 코드 포인트를 포함하는 전용 영역인 0xE000-0xF8FF도 있습니다. 최대 2048개의 코드 포인트인 평면 0의 0xD800-0xDFFF는 Surrogate라는 특수 영역입니다. 프록시 영역의 목적은 두 개의 UTF-16 문자를 사용하여 BMP 이외의 문자를 나타내는 것입니다. UTF-16 인코딩을 도입할 때 도입될 예정입니다.

앞서 언급했듯이 유니코드 5.0.0 버전에서는 238605-65534*2-6400-2408=99089입니다. 나머지 99089개의 정의된 코드 포인트는 평면 0, 평면 1, 평면 2 및 평면 14에 배포됩니다. 이는 71226개의 한자를 포함하여 현재 유니코드로 정의된 99089개의 문자에 해당합니다. 평면 0, 평면 1, 평면 2 및 평면 14에는 각각 52080, 3419, 43253 및 337개의 문자가 정의되어 있습니다. Plane 2의 43253자는 모두 한자입니다. 평면 0에는 27973개의 한자가 정의되어 있습니다.

上篇: 기념 선물로 꿀을 섭취하는 방법은 무엇인가요? 下篇: 주요 정보 보안 개념 주식은 무엇입니까?
관련 내용