[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

Unicode

pointこの用語のポイント

point「文字」と「文字に割り当てた番号」の対応表だよ

pointあるいは、UTF-16のことだよ

point文字コードの話で出てくるよ

スポンサーリンク

簡単に書くよ

Unicodeとは

「符号化文字集合」と呼ばれるもののひとつ。
もう少し噛み砕いて書くと

文字コードの話に出てくる用語のひとつで、コンピュータさんが使う「『文字』と『文字に割り当てた番号』の対応表」のひとつ
です。
あるいは

文字符号化方式(コンピュータさんが使う「文字に割り当てた番号」と「実際にコンピュータさんが扱う数字」の対応表)のひとつである「UTF-16」のこと
です。

image piyo

詳しく書くよ

順番に見ていきましょう。

文字コードは「文字に割り当てられた数字」ね。

Unicode

大前提として、コンピュータさんは「0(ゼロ)」と「1(イチ)」しか理解できません。
人間様が「あ」と入力しても、コンピュータさんは理解できないのです。

Unicode2

でも、コンピュータで文字を扱いたいですよね?
そこで、文字を数字として扱わせることにしました。

例えば

あ:00000001
い:00000010
う:00000011
え:00000100
お:00000101


のように書いてある対応表を、あらかじめ用意しておくのです。
コンピュータさんには、それを見て、お仕事をしてもらいます。

人間様が「あい」と入力したとしましょう。
対応表には

あ:00000001
い:00000010


と書いてあります。
この対応表を元にして、コンピュータさんは「あい」を「00000001 00000010」に変換します。

Unicode3

コンピュータさんは数字の0と1しか扱えませんが、これなら大丈夫ですよね。
人間様が

あい

と打った文字は、対応表によって変換され、コンピュータさんは

00000001 00000010

と認識しました。
コンピュータさんが扱うのは数字です。

その後、あれやこれやとコンピュータさんがお仕事をして

00000011 00000100

という返事をよこしました。

今度は、さっきと逆です。
対応表を元にして、数字を文字に変換します。

対応表には

う:00000011
え:00000100


と書いてあるので、

00000011 00000100



うえ

であると分かります。

コンピュータさんは、対応表に従って変換したものを画面に表示しました。
画面には文字「うえ」が表示されます。

Unicode4

このように文字と数字を変換することで、数字しか分からないコンピュータさんに文字を扱わせているのです。

Unicode5

さて、一連の流れにおいて「文字と数字の対応表」を使いました。

この対応表には、いくつかの種類があります。

その何種類かある対応表のひとつが「Unicode」です。

……というのが、大事なところをかなり大胆に端折った説明です。

次に、もう少し専門的な補足をします。
ここから先の説明は結構ややこしいです。
脳みそがパンクしそうになったら、適当に休憩を挟んでください。

先ほどの説明で「文字と数字の対応表」が登場しました。
そして、Unicodeは「文字と数字の対応表」だと説明しました。
この説明はウソではないけどウソです。

一言で「文字と数字の対応表」と表現しましたが、実際には2つの表を使います。
それは

1.「文字」と「文字に割り当てた番号」の対応表
2.「文字に割り当てた番号」と「実際にコンピュータさんが扱う数字」の対応表


の2つです。

例えば、そうですね。

ピヨ太君が

あ:P-1
い:P-2
う:P-3
え:P-4
お:P-5


な「文字」と「文字に割り当てた番号」の対応表を作りました。
「番号」と言いつつ文字が混ざっていますが、気にしないでくださいね。

さらに

P-1:00000001
P-2:00000010
P-3:00000011
P-4:00000100
P-5:00000101


な「文字に割り当てた番号」と「実際にコンピュータさんが扱う数字」の対応表を作りました。

この2つの表を合体させると

あ:P-1:00000001
い:P-2:00000010
う:P-3:00000011
え:P-4:00000100
お:P-5:00000101


な対応表ができあがります。

この合体した対応表を見れば、コンピュータさんは「あ」「い」「う」「え」「お」の5つの文字を数字として扱えますね。

なんで、わざわざ2つの表を使うのかは、取りあえず考えないでください。
それなりの理由があるのですが、今の段階で考えると混乱すると思います。
とにかく、2つの表を使って、文字と数字の変換を行っているのです。

この2つの対応表のうち

1.「文字」と「文字に割り当てた番号」の対応表

を「符号化文字集合」と言います。
符号化文字集合は「変換対象となる文字の一覧」が書いてある表です。

もうひとつの対応表

2.「文字に割り当てた番号」と「実際にコンピュータさんが扱う数字」の対応表

は「文字符号化方式」と言います。
文字符号化方式は「文字(に割り当てた番号)に対応する、実際にコンピュータさんが扱う数字」が書いてある表です。

それぞれの対応表の役割は、符号化文字集合が「この文字と、この文字と、この文字をコンピュータさんが理解できるようにするよ!」な対象の指定です。
文字符号化方式が「この文字は、この数字に変換するよ!」な変換内容の指定です。

2つ併せて「この文字はこの数字に、この文字はこの数字に、この文字はこの数字に置き換えて、コンピュータさんが理解できるようにするよ!」な「どの文字をどの数字に置き換えるよ!」な指定になります。
つまり、符号化文字集合と文字符号化方式の2つが協力して「文字と数字の対応表」の役割を担っているわけです。

ここまでの説明で符号化文字集合と文字符号化方式については、何となく分かったでしょうか。
分からない方は、頑張って復習してください。
符号化文字集合と文字符号化方式を理解しているか否かで、文字コードに対する理解が大きく変わります。

符号化文字集合と文字符号化方式については何となく理解できたと期待して、次にいきましょう。

符号化文字集合には、いくつかの種類があります。
文字符号化方式にも、いくつかの種類があります。

それを踏まえて「いろいろある符号化文字集合のひとつ」が「Unicode」です。

そうです。
Unicodeは符号化文字集合なのです。

それでは、符号化文字集合としてUnicodeを使うときの文字符号化方式は何なのでしょうね?

符号化文字集合としてUnicodeを使うときの文字符号化方式は「UTF-7」「UTF-8」「UTF-16」「UTF-32」等です。

これがUnicodeとUTF-8などの関係です。

符号化文字集合:Unicode
文字符号化方式:UTF-7、UTF-8、UTF-16、UTF-32


となります。

本来、UnicodeとUTF-8等は種類の違う表です。
ですから、同列に語られるべき存在ではありません。

ですが、UnicodeとUTF-8等が同列に並んでいる場面に遭遇することもあるはずです。
その場合は、Unicodeを「UTF-16」と読み替えてください。

UTF-16は文字符号化方式です。
UTF-8とかの仲間です。
このUTF-16を意図して「Unicode」と表現することがあるのです。

ややこしいですね。
私も、完璧に理解しているとは言えません。
何となく雰囲気がつかめたら、きちんとした説明が書いてあるところで情報を補完してください。

image piyo2

一言でまとめるよ

まぁ「Unicode」って単語が出てきたら「『文字』と『文字に割り当てた番号』の対応表のひとつなんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク