文字コードについて解説する機会があった際に使ったレジュメ用をメモです
日本の文字コード
- 最近はutf-8のがんばりで平和
- それまではいろいろ戦乱
1バイト文字の文字コード
ASCII
American Standard Code for Information Interchange
- ・・・こんな略だったっけ?ってぐらい何の略か調べないランキングに入る当たり前の単語。
- 現在でも主流
- WindowsもMacもLinuxもみんなこれ
- この上にutf-8やShift-JISなどが組み合わさる
EBCDIC
Extended Binary Coded Decimal Interchange Code
- IBMがメインフレーム(昔はIBM製などの大きいUnix機とかありました)で使用していた文字コード
- これに後述する漢字コードを乗っけてました
マルチバイト文字の文字コード
EUC
Extended Unix Code
- UnixでASCIIと組み合わせて使われた。
- utf-8に変更しそびれたレガシーなサーバーで極稀に生息する。
- だいたいPHP4ぐらいまで。
- テキストをShift-JISとして開こうとして半カナだらけに化けたら、たぶんコレ
JIS
- 一部のメインフレームでASCIIと組み合わせて使われた。
- ASCIIと文字コードがぶつかるのでASCIIとJISの切り替えを示すコードが必要
- Shift-JISとして開こうとして$マークのエスケープシーケンスが混ざった文字化けしたら、たぶんコレ
Shift-JIS
- MS-DOSやWindowsでASCIIと組み合わせて使われている。
- JISのコードマップをASCIIとぶつからない様にシフトさせた。
utf-8
- 今の主流
- Windows10でようやくutf-8に変更できそう(?)
- だいたいこれでソースは書いておけば間違えない
その他
utf-16
- これで統一しよう的な動きあったが文字によってバイト数が可変する欠点。
- utf-8に主流を持っていかれた。
- 今となっては希少