★雑木話★
ぞうきばなし

トップページへ

前の段へ   ★雑木話★のリストへ   次の段へ


 ● 第八十八段 ●  バイト−ビット−ビット

 杉野君は、コンピュータに詳しい。だから、彼に尋ねることにした。
「あのさ、コンピュータの情報量の単位にビットとかバイトとかあるじゃない。名前が違うくらいだから、違うんだろうけど、どう違うの?」
「かなり違いますね」
「どれくらい?」
「8倍くらい違います」
「えっ、どっちがどっちの8倍?」
「最初から説明しましょう」
「それはありがたい」
「まず、コンピュータがデータを処理するときには、0と1の2つの数しか使っていないってことは、知ってますね」
「それは、知ってる。コンピュータは、2進数で計算するんだね。中学校の数学の教科書にも載っていたよ。スイッチオンの状態が1、スイッチオフの状態が0だ」
「そこまでわかっていたら、話ははやいです。ビット(bit)というのは、情報量の最小単位なんです。1ビットといえば、0か1かを区別することができるということです」
「つまり、スイッチが1つしかないということだね。オンかオフか」
「そうです。スイッチが2つになると、これが2ビットなんですけど、00、01、10、11の4つの状態を表現できるようになります」
「3ビットだと、2の3乗だから、8通りになるんだね」
「はい。では、スイッチが8個だったらどうなります?」
「2の8乗だから、え〜と、2、4、8、16、32、64、128、256通りだ」
「そう、8ビットだと、256通りの表現が可能になります。これだけあると、アルファベットの大文字、小文字、数字、記号などを表すのには困りません」
「なるほど」
「そこで、8ビットというのが、文字を表す1つの単位になります。これを、1バイト(byte)といいます」
「そうか。やっと、ビットとバイトの違いがわかったよ。ありがとう」
「もう少し説明があるんですから、聞いてくださいよ」
「いいよ」
「アルファベットだったらいいんですよ、1バイトあれば十分ですから。でも、漢字を表現しようとなると1バイトじゃ全然足りないんです」
「そりゃそうだね。漢字なんてやまほどあるからね」
「そこでです。漢字は2バイト使って表すことにしました。、

   256×256=65536(通り)

の組み合わせが用意されていることになります」
「そりゃ、すごい」
「そこで、1バイトで表現できるアルファベットやカタカタなどの半角文字を『1バイト文字』、2バイトで表現される漢字などの全角文字を『2バイト文字』と呼ぶこともあるくらいです」
「へぇ、そうなの」
「個人用(家庭用)のコンピュータが市場に初めて出まわった頃なんかは、コンピュータは漢字のデータを扱うことができなかったんです」
「知ってる知ってる。あのころは、確か、日本語を表現するにも、半角のカタカナしか使えなかったね。一生懸命、半角カタカナを入力していたよ」
「そうでしょ。あれは、当時のパソコンが、一度に8ビットの情報しか処理できなかったからなんです」
「今は?」
「現在の主流では、64ビットパソコンです。

   2^64=18446744073709551616(通り)

ということですから、約1800京(けい)の表現が可能ということになります」
「数字が大きすぎてよくわからないな」
「64ビットといえば、8バイトのことです。つまり、漢字4文字を一度に処理できる能力があるということですよ」
「やっぱりよくわからないけど、なんだかすごいね」



【メモ】

◆半角文字が1文字で、1バイト。たとえば、アルファベットのAやBなら、このようになっている。

  A……01000001
  B……01000010

 たとえば、あなたがコンピュータのキーボードから「A」と打っても、コンピュータの方では「01000001」と処理しているのだ。
 逆に、コンピュータが「01000001」と処理しているものをそのままの形で我々に返されてもわからないから、ディスプレイ上などには「A」と変換されて表示されることになる。

◆半角文字が1文字で、1バイト。400字詰めの原稿用紙のマスを、すべて全角文字で埋めると、800バイト。しかし、400字をワープロソフトを使って打って保存すると、800バイトというわけにはいかない。

◆手元にあるワープロソフトで、「天下泰平」と4文字だけ打って、保存してみた。本来なら、8バイトになるはずだが、20992バイトにもなった。これは、文字のデータ以外に、そのワープロ独自の書式のデータなどがあるためだ。

◆今度は、エディタを使って、同様のことをしてみた。9バイトにしかならなかった。

◆エディタというのは、あまり知られていないが、プログラムの開発のために使われていたソフト。ワープロのように、文字を倍角にしたり、文字の修飾、アンダーライン、罫線などの作業はできないけれど、文字の検索やページの切り替えなどを、ワープロソフトよりも高速に行なうことができる。
「ワープロは、まどろっこしくってやってられねえや!」
という方は、ぜひ使ってほしい。
 この文章も、エディタを使って打っている。文章を打つだけなら、ワープロなんて本当にまどろっこしくてやってられない――大袈裟だが、そんな気にさえなる。ワープロの世話になっていないわけではない。文章を整形したいとき、表などを作成したいとき、文字を修飾したいときなどは、やはり、ワープロを使っている。

◆1MB(メガバイト)とは、100万バイトのこと。フロッピーディスクは、1MBというのが主流だから、ディスク1枚に約50万字を記録できることになる。しかし、ワープロソフトを使っていると、10万字くらいでも保存できないかもしれない。

◆1000MBが、1GB(ギガバイト)。このサイズのハードディスクは、今では、珍しいことでもなんでもない。これはほとんど断言できるが、今に1TB(テラバイト)の記憶媒体が、家庭のパソコンにも普及するだろう。1TBは、1000GB。

◆SI(国際単位系)では、以下のような接頭語を使っている。

  記号 名称    大きさ
   k  キロ  10の3乗
   M  メガ  10の6乗
   G  ギガ  10の9乗
   T  テラ  10の12乗

 しかし、これはあくまでも10進法でのお話。コンピュータの世界は、2進法だから、同じ接頭語を使っていても大きさが異なっていることがある。

  記号 名称    大きさ
   K キロ  2の10乗
   M メガ 2の20乗
   G ギガ 2の30乗
   T テラ 2の40乗

 2の10乗といえば、

   2×2×2×2×2×2×2×2×2×2=1024

コンピュータの世界では、1024倍のことを「キロ」と呼ぶこともあるのだ。10進法では1000倍のことを「キロ」と呼んでいるから、ま、近い数字ではあるけれど……。

◆だから、1MB(メガバイト)とは、2^20バイト、つまり、1048576バイトということになる。
 ところがだ、日常生活で2進法を使うことは滅多にないから、2進法で表されていてもピンとこない。そこのところを考慮してか、

   1MB=1000000B

として扱っている場合がある。だから、さらにややっこしい。
 ハードディスクを購入するときなどは、パッケージをよく読んでみよう!

◆今となっては、信じてもらえないかもしれないが、8ビットパソコンの時代の記憶媒体に、カセットテープがあった。懐かしいなぁ。
 カセットテープは、保存するのにも、読み込むのにも、やたらに時間がかかって大変だった。保存した後も、本当に保存されているかどうか、確認をしておかないととても不安だった。
 だから、フロッピーディスクが登場したときたときには、その速さに感動したし、ハードディスクが登場したときには、この世のスピードとは思えなかった。

◆ハードディスクを使っていても、機械に向かって文句を言っている(人がいる)。
「遅い!」

◆「現在の主流では、64ビットパソコンです」
と稲田君が言っていたが、ゲーム機のプレイステーション2のCPUは、なんと128ビット。

◆「バイト」と呼ばれる工具がある。柄の先端に取り付けられ、旋盤や平削り盤などに使われる。

◆本来の仕事以外に収入を得るためにする仕事を「アルバイト」というが、これは、Arbeitというドイツ語。

◆信州大学経済学部は、他の大学に先駆けて、1992年春の入学者から「産業社会特別実習」の単位を導入している。いわゆる「バイト単位」だ。大学の授業以外に、外でアルバイトをした場合、社会経験としてそれも単位として認めていこうじゃないかという粋な計らい。今では、「バイト単位」って聞いても、あまり驚かなくなった。
 でも、それって、ちょっと甘いんじゃないの? それとも、バイトをやったことがない、バイトもできないという学生が増えてきて、
「お前ら、もうちょっと社会を知りなさい!」
という現状なのか。そうだとしたら、情けない。

◆バイト(bite、〜を噛む)って動詞がありますね。これは、不規則動詞。

   bite - bit - bit

と変化する。ビットとバイトが登場するなんて、面白い。
 ただし、情報量の単位としてのバイトは、byte。お間違えのないように。

◆ビット(bit)は、二進桁を意味するバイナリーディジット(binary digit)の略。
 英語にはbitという単語も別にあって、こちらは、「小片、少量、少し」といった意味がある。日本語でも「ちびっと」という。


[このページの先頭に戻る]