Windowsでは、文字コードに「ユニコード」を使う。Windowsに搭載されているフォントはさまざまあるが、ユニコード文字を表示できるように、多数の文字の形が組み込まれている。 今回は、Windowsでユニコードを“見る”方法について解説する。なお、WindowsではUTF-16LEエンコードをUnicodeと表記する。ここでは、エンコードと混同されないために、文字仕様のUnicodeは「ユニコード」とカナ書きすることにする。 GUIアプリでユニコードを使う ユニコード文字は多数ある。それぞれの文字に割り当てられた文字コードをユニコードでは「コードポイント」と呼ぶ。コードポイントは、「U+」の後ろに16進数4桁または6桁で指定するのが正式な表記方法だ。たとえば、「漢」は「U+6F22」となる。ユニコード関連の文書やもちろん、インターネット内のウェブページでも同様の表記をすることが多い。
先日以下の記事を書きました。 ここでUTF-8の最初の文字かどうかの判定を以下の自作した関数で実装していました。 const ( t1 = 0b00000000 tx = 0b10000000 t2 = 0b00000110 t3 = 0b00001110 t4 = 0b00011110 ) func isUTF8LeadByte(tmp byte) bool { if tmp&tx == t1 { return true } tmp >>= 3 if tmp == t4 { return true } tmp >>= 1 if tmp == t3 { return true } tmp >>= 1 if tmp == t2 { return true } return false }
パソコンの世界で漢字を含む日本語を扱えるようにするために、処理が煩雑になるJISコードをそのまま扱うのではなく、文字コードセットの切り替え処理が不要になるシフトJISというコードが発明されました。 このコードがどのような経緯でMS-DOSなどで採用されたのかは、あまり詳しくわからないのですが、この文字コードは規格ではなくあくまで実装に過ぎなかったので、メーカー独自の判断で構わないと思われていたようです。 MULTI16 - 遂に三菱電機もパソコンを出した この文字コードが身近に使われるようになったのは、MS-DOSが日本語に対応した1983年にリリースされた「日本語MS-DOS Ver2.x」からだと思います。この段階で階層化ディレクトリもサポートされ、CP/Mから継承したコマンドオプションは”/”で始まるというルールが仇となりパスの区切り文字がUNIXなどで使われていた”/”の代わりに”
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く