この演習で使う3つの用語
ASCII
英数字などの番号表(0x00〜0x7F)
Unicode
世界中の文字に番号を付ける仕組み(例:あ = U+3042)
UTF-8
Unicode の書き方(バイト列)。英字は1バイト、日本語は複数バイト
01
進め方
1
個人で計算
10分
2
ペアで確認
10分
相手の名前を自分で変換し
入力して確かめよう
入力して確かめよう
3
挑戦とまとめ
10分
02
あなたの名前を 0/1 に
名前
→
① ASCII(10進)
→
② 2進数
→
③ 16進数
半角英字のみ(A–Z, a–z)。スペースも可。まず ASCII 表で各文字の十進数を調べ、次に 2進数・16進数へ変換しよう。
※ 半角英字とスペースのみ。スペースも 1 文字(32)である
03
色を 0/1 に(RGB → HEX)
文字だけでなく、色もデータである。R・G・B それぞれ 0〜255(8ビット = 1バイト)なので、1色 = 3バイト = 24ビット。Part 01 で学んだ知識がそのまま使える。
カラーピッカーで色を選び、表示された RGB 値から HEX コードを手で計算して入力しよう。
RGB(10進):
04
挑戦:日本語1文字を UTF-8 へ
好きな漢字・ひらがな・カタカナを1文字入力してください。まず「何バイト使うか」を予測してから答えを確認しよう。
絵文字(😀 など)も入る。何バイトになるか試してみよう。
← 好きな文字を1つ
この文字、UTF-8 では何バイトだと思う?
Unicode:
UTF-8(16進):
UTF-8(2進):
合計バイト数:
UTF-8 ビットパターン
05
バイトが生きものになる
名前を UTF-8 のバイト列に変えると、1 バイトが 1 つの部品を選ぶ。ただし使うのは情報バイトだけである—— Part 03 で見たとおり、日本語の 1 バイト目 1110xxxx は「これから 3 バイト続く」という目印で、 文字そのものの中身は 2・3 バイト目に入っている。目印で形を決めると、日本語の名前はみな同じ形になってしまう。
下の対応表で、自分のどのバイトが何を選んだかを最後まで追える。同じ名前からは必ず同じ生きものが出る——それが符号化の決まりごとである。
試す:
名前のバイト列(文字 → UTF-8)
バイト → 部品 対応表
ここまでで分かること。文字は番号になり、番号はバイトになり、バイトは何にでも使える——形にも、色にも。
コンピュータの中では「文字」と「絵」の区別はなく、どちらも同じ 0 と 1 の列である。
06
今日のまとめ
| データ | 規格 | バイト数 | 例 |
|---|---|---|---|
| 英字 1文字 | ASCII / UTF-8 | 1 B(8 bit) | 'A' → 0x41 → 01000001 |
| ひらがな・漢字 1文字 | UTF-8 | 3 B(24 bit) | '九' → E4 B9 9D |
| 色 1色(RGB) | RGB / HEX | 3 B(24 bit) | R=80 G=148 B=182 → #5094B6 |
| 絵文字 1文字 | UTF-8 | 4 B(32 bit) | '😀' → F0 9F 98 80 |
すべて「0と1の列」で表現されている ― これがデジタルの本質である。