SSブログ

単位 [雑談]

TByte、GByte、MByte、KByte... これは情報量を表す単位。1 Byte = 8 bit というのが一般的だということで使われるようになった単位ではあるけど、実はこの前提が「絶対」ではない世界も存在する。なので、本来であれば bit を使った呼び方をした方が正確ではあるのだろうけど、ネットワークの転送速度以外にはあまり使われることもない。

単位換算という事を小学校の低学年あたりで習うようになり、結構イヤな思いをした経験があるのだけれど、生業としてコンピューターと付き合うようになり昔の悪夢を思い出すことがしばしば。

小学校の授業では、長さの単位としてのメートル (m)、重さの単位としてのグラム (g)くらいはまだいい、時間の単位としての秒 (sec)、分 (min)、時間 (hour)が出てきて、更には面積や体積が出てくるあたりでパニックになる。さすがに今ではパニックってことはないのだけれど単位換算というのトラウマになっている人も多いみたい。

プログラマが日常的に遭遇する単位といえば、情報量を表すビット (bit) あるいはバイト (Byte)、時間を表す秒 (sec)、そしていきなり畑違いの感のある周波数 (Hz)ではないだろうか。

情報量というのもなかなか馴染みのない表現だとは思うけど、意外にそれに戸惑う人は多くはない感じ。全く異なる概念である長さや重さと同一視しているような感じだけど、話が通じなくなるようなこともないので、技術の話をするとき以外には違和感を無視することで対処できる。

時間の単位。普段、生活をしているときに感じられる時間の単位と言えば、オリンピック中継の中で出てくるような 1/100 秒がせいぜい。それより細かい単位なんて気にする必要は全くないと言っても過言じゃないだろう。そして、自分の感覚では認識できないような単位で物事を考えなければならない人種、プログラマーは 1/1000 秒、1/1000000 秒という単位を相手にする(事もある!!決して常にじゃない!!)。ミリ秒とかマイクロ秒といった単位でヒトにはなかなか認識できない時間ではあるのだけれど、パソコンレベルのコンピューターであってもそれはほぼ永遠と思えるような長さの時間だったりする。

周波数。パソコンに載っているプロセッサによって若干の違いはあるのだけれど、動作クロックが 3GHz 程度なら普通に入手可能なレベル。周波数というのは 1 秒間の振幅の数といいったところだけど、最近のプロセッサは、この振幅 1 回の時間で簡単な演算であればできてしまう。光の速度というのを覚えているだろうか?光は 1 秒間で地球を 7 周半回れる。およそ300,000 km/sec とすると計算がしやすい。先ほどの 3GHz と合わせて 1 クロック(振幅 1 回分)で光がどの程度進める時間なのか計算してみると面白い。

距離 = 300,000 km / 3G
   = 300,000,000 m / 3,000,000,000
   = 0.1m

これは、一般家庭にあるようなパソコンでも、光が 10 cm 進む時間で計算ができてしまうという事を言っている。それこそアッという間...というか声にもならないような時間。多少余裕をみても相当な計算力(ただし整数の、加算、減算、乗算に限る)と考えることができる。実際にはプロセッサの動作を阻害する要因が多いためこのような結果は「理論値」ということになってしまうのだけど、阻害要因さえなくなれば実現が可能かと思うとちょっとワクワクする。

ここ数日、マイコンを弄っているのだけど、それ(ちょっと古めのプロセッサ)はパソコンとは比べ物にならないほど性能は低い。それでも、ヒトの認識できるレベルからすると超高速と思える演算性能を発揮してくれる。

パソコンがこんなに高クロックで動作する割りに、モッサリ感がぬぐえないのは...。

 


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

メモVB.NET ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。