11月25日(木)UTF-8、UTF-16差異


統一符号化文字セット変換フォーマット(UTF)、後の数字はそのビットのグローバル文字表示方法を使用すると良いでしょう.
UTF-8とUTF-16はUnicodeを表す符号化方式である
UTF-8とUTF-16の基本的な違いは、1文字を表すときに使用される最小バイトと見なすことができる

UTF-8の規則性
1.U+0000~U+007 F(既存ASCIIの0-127)は、8バイトとして表される.
  • の最初のバイトの最初の1の数は、その文字の表示バイトを決定する.
    110 : 2bytes, 1110 : 3bytes, 11110 : 4bytes.
  • の後に続くバイトはすべて10で始まる.
  • UTF 16の表現が表に出ていますが、UTF 16はASKIEと同じ範囲を表す場合、前にも0で埋め込まれています.16ビットが最も少なく、3バイトを使わずに2または4バイトしか使いません.
    UTF 8で3バイト必要な式を2バイトで表す
    すなわち、UTF 8は英語のみで1バイト、UTF 16はデフォルトで2バイト、UTF 8は表現範囲によって2、3、4バイト、UTF 16は2または4バイトとなっている
    UTF 8~3バイトの文字はUTF 16で2バイトなので、ドキュメントが3バイトの場合はUTF 16を選択した方が効率的です

    UTF-8のメリット/デメリット




    UTF-8ウィキペディア

    UTF-16


    U+0000~U+FFF:BMP(基本多言語平面)、最もよく使われる文字はこの分野で
    ただし、U+D 800~U+DFF領域は使用しない.
    U+1000~U+10 FFF:Supplementary Planesと呼ばれ、計算されて格納されるのは4 Bバイト
      1. Code Point - 0x10000 = ( 0x0 ~ 0xFFFFF) : 20bit 영역만 남김
    
      2. 상위 10-bit(0~0x03FF) + 0xD800 을 high surrogate로 할당한다.       
    
        (0xD800~ 0xDBFF)
    
      3. 하위 10-bit(0~0x03FF) + 0xDC00 을 low surrogate로 할당한다. 
    
        (0xDC00~0xDFFF)
    highエージェント/lowエージェントを用いてU+10000以上のコードポイントを表す
    UTF-16ウィキペディア
    ほとんどUTF-8を使用
    Web Encodeの大部分はUTF-8が占めています
    7 bit ASCII領域はUTF-8で同一符号化
    記憶・通信容量を考慮しない場合はUTF-8を使用する
    ただし、容量に敏感な場合は、UTF-8、UTF-16で考慮すべき
    ドキュメントに多く使用されているCodePointがどれだけのByteとして表示されるかを考慮して、ストレージ、通信容量を節約できるかを決定します.
    例えば、UTF-8はアルファベット文字で満たされた文書の大部分が1 byteであり、UTF-16は2 byteであり、UTF-8はより有利である.
    韓国語ではUTF-8が3バイト、UTF-16が2バイト、UTF-16が有利