UTFとは何ですか.


Unicode?


世界には何種類の言語がありますか.各民族、各部族にはそれぞれの文字、文法、体系がある.韓国はハングルを使う.イギリスは英語、ドイツはドイツ語を使います.こんなに多くの言語をパソコンに入れて互いに互換性を持つには、別のシステムが必要です.これを快適にしてくれたのはUnicode.

Grapheme?


Unicodeはテキストの処理にgrapheremeクラスタアルゴリズムを使用します.筆跡がどういう意味か知りたくて探してみました.ハングルの意味は字素です.定義は「ある言語の文字システムにおいて、意味的に区別できる最小単位を指す」.
例は次のとおりです.
c-a-t 에서 c에 의해서 표현되는 /k/
l-ea-f 에서 'ea'에 의해 표현되는 /ee/
n-igh-t 에서 'igh'에 의해 표현되는 /ie/

code point?


Unicodeは、すべての文字を「コードポイント」と呼ばれる特定のコードにマッピングします.code point形式はU+(hex-code)であり、範囲はU+0000からU+10 FFFである.

character set?


公制が国際長単位として使われているように、character setはインターネット上で使われている様々な文字を統一的な方法で説明する基準と言える.
符号化文字セット、コードセット、または符号化とも呼ばれます.code pointからなり、例えば、国際EBCDICの文字Aのcodepointは0 xC 1である.世界には文字セットがたくさんあります.その代表的なものは国際EBCDIC、ラテン1、Unicodeである.

character encoding?


ラテン語の「á」や漢字の「どうぞ」のように、文字は単語や文を表すのに使われます.各文字は文字セットに分類されます.
文字列はバイト単位でコンピュータに格納されます.文字とバイナリコードには一対一の対応関係があると考えられます.
character set = {character, character, ....}
byte set = {0110101.., 1011001.., ....}
character set <----mapping----> byte set
ユーザがキーボード上で「w」を押すと、その文字がどのバイトで符号化されているかを知る文字列符号化は、対応するコードを解釈し、wが画面上で出力されるのを助ける.

UTF?


Unicode文字列符号化のタイプを表します.種類はUTF-8、UTF-16などがあります.コンピュータは文字を理解し、8ビット単位か16ビット単位かを区別することができる.
拡大鏡で見てください.古代パピルスのように見えます.

現在chrome consoleを使用してx軸の00,y軸の01を出力しています.

こつこつ!

References

  • grapheme
    ( https://www.phonicbooks.co.uk/2011/09/03/what-is-a-grapheme/ )
    ( https://www.twinkl.com.mx/teaching-wiki/grapheme )
  • Unicode
    ( https://en.wikipedia.org/wiki/Unicode )
    ( https://unicode.org/reports/tr29/ )
  • Character Encoding
    ( https://medium.com/jspoint/introduction-to-character-encoding-3b9735f265a6 )
    ( https://www.w3.org/International/questions/qa-what-is-encoding )
  • Unicode Escape Sequence
    ( https://www.ibm.com/docs/en/xl-c-and-cpp-aix/13.1.2?topic=details-unicode-escape-sequence )