0
0

More than 5 years have passed since last update.

【自分用メモ】文字コード

Posted at

ツール

参考サイト

用語

文字コード

符号化文字集合(character set)

  • Unicode, JIS, KS, ...
  • 一つ一つの文字に、符号位置(コードポイント)と呼ばれる整数値をつけて管理
    • Unicodeの"あ" -> U+3042
    • JIS X 0208 の"あ" -> 4区2点
  • 符号位置は符号空間の座標
    • 群、面、区、点

符号化方式(Character Encoding Scheme, CES)

  • 符号化文字集合で文字に対応づけた整数値を、コンピュータが利用できるデータ列(通常、バイト列)に変換し符号化(Encoding)する方式
  • ShiftJIS, EUC-JP, ISO-2022-JP, UTF-8, UTF-16, ...

Unicode

  • 世界中の文字を扱えるようにした符号化文字集合
  • 基本多言語面(Basic Multilingual Plane: BMP)

UTF-8, UTF-16, UTF-32

  • それぞれ、8bit, 16bit, 32bit 単位で符号化した符号化方式
  • UTF-8
    • 符号位置(コードポイント)によって長さが1~4bytesに変化する可変長の符号化方式
    • ASCII(半角文字)にしか対応していないシステムでも、大きな変更なしに使える
    • ファイルへの保存や通信に便利で、メモリ効率も高い
    • 可変長のためにプログラムからの操作には不便
  • UTF-16
    • サロゲートペアを利用
  • UTF-32
    • サロゲートペアを使わずに固定長で表現する

ビッグエンディアンとリトルエンディアン

MSB/LSB (MostSignificant Bit/Least Significant Bit)

BOM(Byte Order Mark)

  • テキストの先頭にて、どちらのエンディアンかを示すマーク
  • ビッグ: FE FF, リトル: FF FE

Unicodeエスケープ

書籍

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0