"문자 코드"/ "코드 포인트"와 "문자 인코딩"이라는 용어를 설명하는 "문자 코드 문제에 대한 자습서"(http://jkorpela.fi/chars.html#code)가 있습니다.ASCII 코드 포인트 대 문자 인코딩
전자는 문자에 할당 된 정수입니다. 예를 들어 문자 A는 65 자입니다. 문자 Z 드는 이러한 Z 드점이 하나 이상의 바이트를 통해 표현되는 f}을 정의합니다.
오래된 ASCII의 경우 autor는 다음과 같이 말합니다. "ASCII 표준에 지정된 문자 인코딩은 매우 간단하며 코드 번호가 255를 초과하지 않는 문자 코드 중 가장 분명합니다. 각 코드 번호는 같은 값 옥텟. "
그래서65 나는 127 코드 포인트가 ASCII 127 개 문자를 가지고 있기 때문에 각각의 코드 포인트는 항상 여기서 A에 대한 코드 포인트 1000 0001
로 인코딩 될 것입니다 1 바이트 씩 인코딩됩니다.
나는 이것을 요약하면 I ASCII 문자를 인코딩하려면 다음 단계가 있습니다
- 숫자 (코드 포인트)를 할당 각 문자 (예 : A-> 65)
- 인코딩 A를 문자로를 동일한 값을 갖는 바이트 (예를 들어, 1000 0001)
하고
것이다 B -> 65 -> 1,000 0,001 B -> 66 -> 1000 0010
내 질문은 :
왜 ASCII에서이 코드 포인트의 분리 및 인코딩? ASCII에는 단 하나의 인코딩 만 있습니다. 그래서 적어도 ASCII의 경우 중간 단계 (정수로 매핑)가 완료된 이유는 분명하지 않습니다.
같은 A 직접 인코딩 -> 1,000 0,001 B -> 1,000 0,010
가능 여부 있을까? ASCII 문자에 대해 여러 개의 인코딩을 사용한다면 별거는 합리적인 편이지만 인코딩 양식이 하나만 있으면 나를 이해할 수 없습니다.
ASCII와 같은 단일 바이트 인코딩에서 65와 같은 코드 포인트와 해당 인코딩을 구분할 수있는 이점이 있습니까? – knowledge
ASCII가 유일한 문자 세트이면 yes입니다. 그러나 그것은 지금까지 유일한 문자 세트가 아니 었습니다. 개념에는 다른 속성이 있습니다. 예를 들어 코드 포인트를 계산하는 것은 유용하지만 인코딩의 바이트 값은 계산하지 않는 것이 좋습니다. 하나는 문자 집합간에 코드 점을 전달할 수 있지만 코드 단위를 비교하면 완전히 다른 수준으로 이동합니다. –