文字のデジタル化|文字はどうして数字になるの?文字コードの仕組みをかんたん解説

Introduction

文字をどんな風にコンピュータは扱っているんだろう。そんな素朴な疑問を解決しましょう!

コンピュータは「0」と「1」しか、分からない。

では、文字はどのように管理しているんだろう?

スマートフォンでもパソコンでも皆さんは常に文字を読んでいますし、自分で入力することもあるはず。

当たり前に使っているものの仕組みを知ることって「なるほど」となることが多いのでは。

 

コンピュータが文字をどう扱っているかを学習するぞ

文字コードとは

コンピュータは文字を2進法で管理していて1つ1つの文字にはそれぞれ数値が割り当てられています。

この数値のことを文字コードとよんでいます。

また、その文字と数値が対応した表のことを文字コード表とか文字コード体系とよびます。


※特許庁のサイトより

このような文字の表がコンピュータの内部に保存されて管理されているんです。

下の図は「ASCII」という文字コード表です。

この表で例えば「A」の文字を取り出したい時は、上位ビットと下位ビットを繋げます。

「A」・・・上位ビット「100」 下位ビット・・・「0001」

繋げて「1000001」これが「A」になります。

「上位ビット」と「下位ビット」→「上」の次に「左」を繋げる

と覚えておきましょう。
※上位ビットと下位ビットの表記は2進数ではなく16進数が使われていることもあります。

文字をコード化(数値に置き換える)することをエンコード、もとに戻すことをデコードとよびます。

 

続いて覚えておくべき有名な文字コードをいくつか紹介します。

ASCIIコードとは

ASCIIコードとは1963年にアメリカの規格協会(ANSI)が定めた文字コード体系です。

27 つまり128種類の文字や記号が割り当てられており最初に世界に広まった文字コードといえるでしょう。

 

このASCIIコードは問題として扱われることもあるので詳しく説明していきます。

なぜ 27 になったのでしょうか?

コンピュータを使い始めて、まず人間がコンピュータに扱わせたくなるのが文字ですね。

では、文字を扱うには何ビット必要になるかを考えてみましょう。

1ビットだと扱えるのは「0」と「1」。

「0」に「A」を割り当てて「1」に「B」を割り当てたとして2文字しか扱えません。

では、2ビットにしたらどうなるでしょう。

22 で4種類の文字を割り当てる事ができます。

3ビットだと23 で8文字・・・。

同じように考えると

  • 4ビット・・・16文字
  • 5ビット・・・32文字
  • 6ビット・・・64文字
  • 7ビット・・・128文字
  • 8ビット・・・256文字

となります。

ここでアルファベットの文字数を考えます。

A~Zまでで26種類。

ん?5ビットで足りそうかな?

いや、アルファベットの小文字も使いたいですね。

そうなると52種類。

さらに数字も表示したいですね。0~9で10種類。

合計すると62文字。

6ビットだと64文字まで大丈夫だから何とかなりそう。

でも、さらに「+」や「&」や括弧などある程度の記号も欲しいですね。

そうなると6ビットでは足りないけど、7ビットの128なら足りそうです。

ということでASCIIコードは7ビットになったというわけ。

 

さらに言うと、データを送信する際に誤りがないか1ビット追加することがあります。

これをパリティビットと呼ぶのですが、その1ビットを足すと1文字に必要なビット数は7+1で8になります。

1文字が8ビット・・・これが1バイトの単位の元となっています。

 

なるほどー

日本語の文字コード

今説明したASCIIコードでは日本語は表示できません。

ということで各国で独自の文字コード体系が作成されました。

日本でもいくつも文字コードが登場するわけですが、ここでは試験問題に登場しそうな3つだけ紹介しておきます。

  • JISコード
  • SHIFT_JISコード
  • EUCコード

細かい話は省くとして、この3つは押さえておきましょう。

あと、これら文字コードは2バイトもしくはそれ以上のバイト数が使用されているということは覚えておきましょう。

 

2バイトだと65,536種類の文字をあらわすことができるね

文字化け

このように、各国で様々な文字コードが使われる時期があったのですが、そこで起こったのが文字化けです。

文字コードが違うということは、文字を登録した表が異なるということ。

つまり、同じ場所に違う文字が登録されていることになります。

「あ」を表示しようとしたら見たことのない文字が表示されてしまう・・・。

このような事態が起こってしまいます。これを文字化けとよんでいます。

 

最近は文字化け見なくなったなー

UNICODEとは

世界中にインターネットが広がったことにより、世界中の文字を統一して扱える文字コード体系が必要になりました。

そこで登場したのがUNICODE。

現在もっとも使われている文字コード体系です。

100万以上の文字が扱えて1~6バイトの可変バイトになっています。

絵文字なんかも登録されていますよ。

方式がいくつかあるのですが、

その中でも現在一番使用されているのはUTF-8という方式です。

覚えておくべきポイント

  • コンピュータでの文字は文字コードであらわされる
  • ASCIIコードとはどんな文字コードか
  • 日本語の文字コードは?
  • UNICODEとは

練習問題

◎ 各問題をクリック(タップ)すると答えが出てくるよ

1000100
2バイト
7ビット

 

文字に関してはデザイン的な知識も覚えておきたいね