Diary

Diary

日々学んだことをアウトプットする場として初めてみました

文字コードど入門

文字コード入門

文字コードについて全くの初心者が、少し調べたのでまとめてみた。

  • 調べる前の自分の知識
    • ASCIIってのは文字関係のなんかでしょ
    • Unicode,utf-8って文字関係の...
    • で、どう違うん???

文字をコンピュータが扱う

  • 文字だけに限らないが、コンピュータが扱う際には全て0・1の2進数で扱う必要がある。

符号化

  • この0・1の2択のことを文字を扱う世界では”符号”と呼んでおり、文字を0・1の符号に変換することを符号化という。

文字コード

  • 符号化の際のルールのこと。符号化文字集合とも呼ばれる

文字化け

  • 符号化の解釈を異なる文字コードで実行しようとするときに発生する

文字コードの例

ASCII(アスキー

  • ”American Standard Code for Information Interchange”の略
  • American とあるように、ラテン文字の取り扱いがメイン
  • 7ビットの1バイトコード
    • ラテン語アルファベット26*2(大文字小文字)
    • 数字10(0−9)
    • 記号
    • を含めても128パターン(7ビット)で足りる

JIS X 0208

  • 日本語の最も基本的な2バイト文字列
  • 2バイトで94*94=8836文字登録できる
    • 94=128(7ビット)ー32(制御文字)ー2(なんだっけ)

Unicode

  • 世界中の文字を1つの文字集合へと収めるべく開発されたもの
  • 元々の思想は16ビット(2バイト)で全てを表現すること!(UTF-16
    • 足りるわけない!!(Unicodeの失敗)
    • ASCIIとバイト単位で互換可能なものが UTF-8 で、3バイトある

制御文字

  • 制御文字とは、普通の意味の文字ではないもの。例えば改行コードなど
  • ASCIIでは、0x00~0x1Fまでが割り当てられている。
  • よく使われる制御文字
制御文字 ASCII
ベル 0x07
水平タブ 0x0B
CR 0x0D
LF 0x0A