02-03 コンピューターが世界中の文字がわかるのはなぜ?(2/2)

02-03 コンピューターが世界中の文字がわかるのはなぜ? 追加記事A

聖書が読めるかは、本物のハルマゲドンを生き残れるかどうか命にかかわることです。聖書は、全部または一部が3000以上の言語で読めるようです。聖書を正しく教えているJW.ORGは、1080以上の言語に対応しています。
前の記事では、コンピューターが英文字を扱える仕組みを考えました。

次は、世界中の文字を扱える仕組みを知りましょう。
コンピューターがどのように世界中の文字を扱えるかを知っておくといろいろな時に役立ちます。

世界中の文字に番号を付ける

ASCIIのおかげで、どのコンピューターでも同じように英文字が扱えるようになりました。
では、日本語はどうでしょうか。平仮名だけで51文字、カタカナを含めると倍になります。漢字を含めたら、とんでもない数になります。そうすると、0から255までしか扱えない1バイトではとても足りません。

そこで、1バイトではなく、もっと長いまとまりで1文字を表す仕組みを考えました。単純計算すると、2バイトで65536種類の文字に番号をつけることができます。日本語で日常的に使う字はこれだけで足りそうです。でも、人名で使われている文字などを全部は入れられませんでした。
3バイトで1文字を表そうとすると、16777216種類の文字に番号をつけることができます。これだけあれば、中国語など文字の種類がとても多い言語にも対応できます。
8つひとまとまりの電気信号が1バイトですから、2バイトは16個、3バイトは24個の電気信号をひとまとまりとして扱います。
このように2バイト以上で1文字を表すことをマルチバイト文字といいます。

日本では、Shift_JISという独自のマルチバイト文字で、日本語で使われる文字が扱えるようになりました。詳しい説明は省きますが、Shift_JISは日本の仮名や漢字を1文字2バイトで取り扱い、ASCIIとも何とかうまくいくように設計されています。Shift_JISは、今でも日本の中で使われています。

やがて、時代が進み、世界中の国が同じ水準でコンピューターを使える必要が出てきました。そうなると、世界中の言語のすべて文字に番号を付けなおす必要があります。そうして決まったのが、Unicode(ユニコード)です。Unicodeは全世界で使われている文字すべてに番号をつけたものです。

Unicodeをそのままコンピューターで扱うのは、少しやりにくいので、扱いやすい形にする方式がいくつかあります。その1つの方式がUTF-8です。

ワンポイント-UnicodeとUTF-8はどういう関係か?

Unicodeは、世界中の言語のすべての文字に付けた番号です。UTF-8はそれを使いやすい形に変換する方式のことです。
この関係をイメージで、ざっくりと説明します。
全国の高校生全員に、学校や学年は関係なく、通し番号を付けるとします。高校生の全体を見渡すのにはその番号が使えそうです。ちょうどUnicodeは、高校生全員に付ける通し番号のようなものです。
でも、事務を扱う時は、通し番号では扱いにくいので、その番号を学校や学年で整理して扱いやすくします。そういうふうに、Unicodeを扱いやすく変換するやり方がUTF-8です。
整理の方法は、学校や学年だけとは限りません。成績や運動能力などでも整理できます。同じように、UnicodeもUTF-8以外にもUTF-16など別の変換方式があります。
Unicodeは、UTF-8で、コンピューターが扱いやすく変換できます。逆に、UTF-8に変換されたものは、Unicodeに戻すことができます。

UnicodeとUTF-8のおかげで、コンピューターは世界中の言語を使えるようになりました。そして、インターネットで世界中の言語が扱えるようになったので、JW.ORGでも言語をどんどん増やしています。これでまたハルマゲドンを生き残れる人たちが増えることでしょう。

コンピューターの文字の扱い方を知っているとどんな時に役立つか

コンピューターは、文字に付けられた番号で扱っていることを知っていると、コンピューターを使ういろいろな時に役立ちます。よく出会う3つのことを考えてみましょう。

半角と全角の落とし穴に気づける。

コンピューターは、文字を番号で扱っています。1つでも違う番号だと違う文字として扱われます。フォントの都合で、人間からは違いが見分けにくいとしても、コンピューターは別の文字として扱うことがあります。
例えば、[JW.ORG]と[JW.ORG]を見分けられますか。なぜこんな紛らわしいことが起きるのでしょうか。それは、半角と全角があるからです。

半角と全角とは何ですか。この言葉は、コンピューターが普及する前のワープロ専用機の用語です。ワープロ専用機では、印字される1文字の横幅が決まっていて、全角が標準サイズで、半角は横幅が全角の半分です。当時は、活字の影響で、日本語の印刷物は原稿用紙のように文字が縦横きちんと並んでいないと見苦しいと考えられていました。それで、漢字や仮名と同じ横幅の全角の英文字が作られました。こうして、ASCIIの半角の英文字と、全角の英文字が使われるようになりました。

全角の英文字は、コンピューターの中では半角の英文字とは違う番号で扱われているので、使えないことがあります。インターネットのURLやメールアドレスは、必ず半角の英文字を使います。
自分が半角の英文字か全角の英文字のどちらを入力しているかどうすればわかりますか。見分けるには、[A]を押してみて、「あ」で始まる言葉の候補が出てきたら、全角の英文字で入力するモードになっています。半角の英文字を入力するモードだと、[A]を押しても、候補は出ないで、そのまま[A]と表示されます。

ワンポイント-アメリカから入ってきたコンピューターのおかげで何が起きた?

アメリカから輸入された安いコンピューターが一般に普及すると、用紙の幅に合わせて文字の間隔を調整する仕組みや、カーニングが日本語の文書にも取り入れられるようになりました。カーニングは、[m]や[w]のように横幅の広い文字と[i]や[l]などの横幅の狭い文字とで文字の間隔を調整する仕組みです。
そういう仕組みのおかげで、原稿用紙に書くような、文字を縦横きちんと並べるほうが難しくなってきました。
また、印刷物では絶対いけないことだった[、]や[。]が行頭にきてしまうことも、インターネット上の文章では起きてしまいます。こんなことが起きるのは、印刷物は見た目の美しさが何より大切にされているのに対し、インターネットでは、文のまとまりが大切にされているからです。

ざっくりとしたデータ容量がわかる。

ASCIIの[Better World]は、空白を含めて12文字ですから、12バイトの容量になります。では、[新しい世界]の5文字は何バイトでしょうか。UTF-8では、日本語の文字は1文字3バイトなので15バイトになります。

文字の仕組みがわかっていれば、必要な容量がざっくり計算できるようになります。例えば、A4の用紙に日本語で文字を埋めると、だいたい42文字36行で1512文字になります。UTF-8で記録すると、1文字3バイトなので、4536バイト必要です。

ここまで、数字を出せないとしても、自分が作っている文書ファイルがどのくらいの容量なのかに気が付くと、むやみに大容量なストレージを購入しなくても済みます。

文字化けに対処しやすくなる。

文字化けとは、表示が次のような意味不明の文字列になってしまう現象のことです。
끥地䐰ᙎ䱵ഀ਀

ワンポイント-文字と文字列。

2文字以上の文字の連なりを文字列といいます。文字列は、コンピューターでよく使われます。
はっきりとした区別ではありませんが、文字列は改行を含まない文字の連なりをイメージします。
インターネットのURLやメールアドレスは、途中で改行しないので、文字列です。
この囲みのように、改行された複数の文字列をテキストといいます。
例:
文字: 0    あ     愛
文字列:F999   命か死   https://ms-ssd.jp/doc/
テキスト:
買い物メモ
バナナ
インスタントラーメン
鉛筆

文字化けは、文字コードの読み込みがずれてしまうか、違う文字コードの仕組みで読もうとしているのが原因です。Shift_JISでは1文字につき2バイトですが、UTF-8では日本語の1文字は3バイトです。6バイトのデータがあったとすると、Shift_JISでは3文字として扱おうとして、UTF-8では2文字として扱おうとしますから、ずれてくるのは当たり前です。

文字化けが起きることは少なくなりましたが、悪いタイミングが重なると、今でも起きてしまいます。例えば、古いコンピューターだとUTF-8が扱えないことがあります。そういうところに気にせずメールを送ってしまうと、受信者は文字化けして読めません。
また、Shift_JISが当たり前だったころに作られたWebサイトが更新されないで残っていることもあります。そういうWebサイトを見ようとすると、文字化けを起こします。今は、Shift_JIS やUTF-8など、どの文字コードの仕組みを使うかをはっきりさせてからWebサイトを作ります。

文字コードのことをざっくりでもいいので理解しておくと、文字化けが起きても原因が突き止められるようになります。

ワンポイント-「コンピューター」は「コンピュータ」ではないのに、「データ」は「データー」でないのはなぜですか?

長音記号とは、「コンピューター」や「プレゼンター」のような伸ばす記号[ー]のことです。
昔の技術者は、JISの文書の書き方に関する決まりに従って、できるだけ長音記号を省略してきました。そうしてきたのは、ただでさえ少ないメモリやストレージの使う量を減らすためです。
時代が流れ、文化庁からカタカナ語の表記法についての新しいルールが示されるなど変化しました。コンピューターの容量も長音記号が増えたぐらいで足りなくなることはなくなりました。それに、技術者ではない大勢の人もコンピューターを使うようになりました。
もし、あなたが仕事として文書を作成しているなら、それまで通りに表記してください。そうすると、今までの文書と同じスタイルが保たれて、後から見通しが良くなるでしょう。
今までルールを決めていなかったのでこれから決めようと思っているなら、次のようなルールが参考になるかもしれません。

  • ComputerやAdministratorのようにerやorで終わる単語には長音記号をつける。
  • Dataのような終わり方をする単語には長音記号はつけない。

エホバの証人の日本語の2000年以前の出版物は、長音記号が用いられているものもあれば用いられていないものもあります。
このように、長音記号の有り無しや送り仮名の違いのことを表記ゆれといいます。表記ゆれを許せなく感じる人もいますが、コンピューターは表記ゆれがあると、違うものとして扱います。そうすると、検索機能が思ったのと違う動作をします。

タイトルとURLをコピーしました