코드 포인트

Code point

문자 부호화 용어에서 코드 포인트, 코드 포인트 또는 코드 위치는 특정 문자에 매핑되는 숫자 값입니다.코드 포인트는 일반적으로 단일 그래프(일반적으로 문자, 숫자, 구두점 또는 공백)를 나타내지만 기호, 제어 문자 또는 [1]형식을 나타내는 경우도 있습니다.특정 인코딩/문자 집합 내에서 가능한 모든 코드 포인트 집합이 해당 인코딩의 코드 [2][3]공간을 구성합니다.

예를 들어 문자 부호화 방식 ASCII는 0~7Fhex 범위의hex 128개의 코드 포인트를, 확장 ASCII는 0~FFhex 범위의hex 256개의 코드 포인트를, Unicode는 0~10FFFFhex 범위의hex 1,114,112개의 코드 포인트를 포함한다.유니코드 코드 공간은 17개의 평면(기본 다국어 평면 및 16개의 보조 평면)으로 나뉘며, 각각 65,536(= 2)개의16 코드 포인트가 있습니다.따라서 유니코드 코드 공간의 총 크기는 17 × 65,536 = 1,196,112입니다.

정의.

코드 포인트의 개념은 추상화에 사용되며, 다음 두 가지를 구별하기 위해 사용됩니다.

  • 일련의 비트로서 부호화로부터의 번호
  • 특정 그래픽 표현(hyph)의 추상 문자.

이는 다음과 같은 구별을 원할 수 있기 때문입니다.

  • 특정 코드 공간을 다른 방법으로 인코딩하거나
  • 다른 글씨로 글자를 표시하다

Unicode 에서는 특정 비트시퀀스를 코드 유닛이라고 부릅니다.UCS-4 인코딩에서는 임의의 코드포인트가 4바이트(옥텟) 바이너리 번호로 부호화되어 UTF-8 인코딩에서는 다른 코드포인트가 1~4바이트 길이의 시퀀스로 부호화되어 자기동기 코드를 형성합니다.상세한 것에 대하여는, Unicode 인코딩의 비교를 참조해 주세요.코드 포인트는 보통 추상 문자에 할당됩니다.추상 문자는 그래픽 글리프가 아니라 텍스트 데이터의 단위입니다.단, 코드 포인트는 향후 할당(Unicode 코드 공간의 대부분은 할당 해제)을 위해 예약된 상태로 두거나 다른 지정된 함수를 지정할 수도 있습니다.

코드 포인트와 대응하는 추상 문자의 구별은 유니코드에서는 발음되지 않지만 단일 코드 공간에 다수의 코드 페이지가 존재할 수 있는 다른 많은 인코딩 방식에서는 명백합니다.

역사

코드 포인트의 개념은 1980년대에 [4]문자 부호화 개발자들이 직면했던 난제에 대한 유니코드의 해결책의 일부입니다.더 큰 문자 집합에 대응하기 위해 문자당 더 많은 비트를 추가할 경우, 이 설계 결정은 라틴 스크립트 사용자([5]당시 컴퓨터 사용자의 대부분을 차지했던)에게는 허용할 수 없는 계산 자원의 낭비가 됩니다.이러한 추가 비트는 항상 제로 상태가 되기 때문입니다.코드 포인트는 문자와 특정 비트시퀀스 간의 직접적인 일대일 대응이라는 오래된 생각을 깨고 이 문제를 회피합니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "The Unicode® Standard Version 11.0 – Core Specification" (PDF). Unicode Consortium. 30 June 2018. p. 23. Archived from the original (PDF) on 19 September 2018. Retrieved 25 December 2018. Format: Invisible but affects neighboring characters; includes line/paragraph separators
  2. ^ 유니코드 용어집
  3. ^ "The Unicode® Standard Version 11.0 – Core Specification" (PDF). Unicode Consortium. 30 June 2018. p. 22. Archived from the original (PDF) on 19 September 2018. Retrieved 25 December 2018. On a computer, abstract characters are encoded internally as numbers. To create a complete character encoding, it is necessary to define the list of all characters to be encoded and to establish systematic rules for how the numbers represent the characters. The range of integers used to code the abstract characters is called the codespace. A particular integer in this set is called a code point. When an abstract character is mapped or assigned to a particular code point in the codespace, it is then referred to as an encodedcharacter.
  4. ^ Constable, Peter (13 June 2001). "Understanding Unicode™ - I". NRSI: Computers & Writing Systems. Archived from the original (html) on 16 September 2010. Retrieved 25 December 2018. By the early 1980s, the software industry was starting to recognise the need for a solution to the problems involved with using multiple character encoding standards. Some particularly innovative work was begun at Xerox. The Xerox Star workstation used a multi-byte encoding that allowed it to support a single character set with potentially millions of characters.
  5. ^ Mark Davis, Ken Whistler (23 March 2001). "Unicode Technical Standard #10 UNICODE COLLATION ALGORITHM". Unicode Consortium. Archived from the original (html) on 25 August 2001. Retrieved 25 December 2018. 6.2 Large Weight Values{{cite web}}: CS1 maint: 작성자 파라미터 사용(링크)

외부 링크