見出し画像

コンピュータの黎明期と現在でコンピュータに関する思想は変わったのか?

おはようございます。またはこんにちは。もしくはこんばんわ。マゲっちSCと申します。10月ももうそろそろ終盤ですが皆さんいかがお過ごしでしょうか?いきなり秋から冬に気温が変わったせいで体調不良の方もいらっしゃるかも知れませんね。今日10月23日からまた気温が秋に戻るんだそうです。地域によりますが前日比は10度ですからね。

さて、前回のブログでは2進数、10進数、16進数のお話をさせていただきました。コンピュータの考え方とユーザの考え方としては昔も現在もコンピュータ側は2進数、ユーザ側は10進数が得意であり、16進数はお互いにわかりやすい(とはいっても慣れは必要)形式となっていることがおわかりいただけたかと思います。実は60進数も私たちの生活上外せないのですが、どこで使われているかお分かりいただけるでしょうか?答えは時計です。0~59秒まで数えていって、60秒になると秒数は0に戻りますが、分の位は1繰り上がっていきますよね。それを繰り返して60分経つと今度は時間の単位が1繰り上がります。

コンピュータの基本的な思想について

前回のブログでは数学的な観点からコンピュータの思想について見ていきました。今回は歴史的な観点といいますか、コンピュータってこういうものだよという部分で見ていきたいと思います。私たちが利用しているコンピュータは「ノイマン型コンピュータ」と呼ばれる思想で形作られています。ノイマンとは人物名でジョン・フォン・ノイマンさんという方が提唱したコンピュータ・アーキテクチャを使用しています・・・。と言っても何のことかさっぱりだと思いますので、簡単に説明申し上げると、ジョン・フォン・ノイマンさんという方が「コンピュータはCPUによって演算と制御が行われ、データはメモリ内部にある各アドレスに紐付けて格納される。プログラムと作成されたデータは区別されることなく記憶装置に記憶する。各装置はバスという伝送路でつながっている」とされています。

CPUは日本語では中央演算処理装置と呼ばれているため主に計算をして数値の合計などを算出したり、文字を変換してひらがなやカタカナ・漢字に変換したり、マウスカーソルの位置を計算して画面に表示したり音声のボリュームを変更したり・・・と思われがちですが、0と1での演算が可能ということは演算した結果を用いてコンピュータの動きを制御する事もできるということです。情報処理試験ではCPUは演算と制御を行う装置として紹介されています。そしてCPUが計算した結果はバスを通じてメモリに伝送され、メモリ内のアドレスに紐付けられて記憶されます。また、HDDやSSDという補助記憶装置にはプログラムが事前にインストールされていたり、ワープロや表計算ソフトを使用して作られたデータをプログラムがインストールされている補助記憶装置内に保存することができます。

こう考えると現在のコンピュータと非常に似通った発想であることがわかりますね。それもそのはず、現在のコンピュータはこのノイマン型コンピュータの基本理念をもとにハードウェアやOSが開発されているからです。そして私は前回のブログで、コンピュータは電子計算機であるがゆえに初期設定としては必ず0が入力されている。と申し上げました。

個人の設定はいかにして反映されるのか?

しかしコンピュータを立ち上げると個人で設定したりカスタマイズした結果がキチンと反映されている状態で立ち上がります。それはOSへの変更がキチンと保存され、次回からその設定を立ち上げた直後に反映できるからです。OSへの変更を行ってもそのデータがキチンと記憶されていなければ電源を切り後日再度起動をしてももとに戻ってしまいます。それはプログラムと設定ファイルが別物だからですね。ですが設定ファイルをHDDやSSDの中のOSのプログラムと同じところに保存することによって、個人の設定をOS起動後に読み込んで反映させることができます。個人の設定というのはマウスカーソルの種類や移動速度、壁紙、文字表示の大きさや画面の輝度などですね。コンピュータを起動するとメモリにOSのデータが展開されるのですがそのときはあくまでOSのデータと設定されている初期値が読み込まれます。ですが、その初期値に変更が加えられていた場合はその変更されたものを初期値として読み込んだり、もしくはOSのデータを読み込んだあとで設定ファイルを読み込んでみなさんのカスタマイズした内容を反映しているからなのです。

近年ではハードウェアのパワーアップにより、扱えるデータの総量は増えました。しかしながら根本的な考え方は70年以上変わっていません。それはなぜかというと、ノイマン型コンピュータのアーキテクチャ(思想)よりもより効率的な考え方が出てこないからです。私がブログで書いているコンピュータとはPCはもちろん家庭用ゲーム機やスマートフォンやPDA機器、家電製品のマイクロコンピュータ(マイコン)も含んでいます。もしノイマン型コンピュータより効率的な思想があればみんなそちらへと乗り換えているはずです。コンピュータのハードウェアを開発したりソフトウェアを開発したり、プログラム言語を開発したりする賢い人はたくさんいますが、彼らを持ってしてもノイマン型コンピュータよりも更に効率的なコンピュータの開発は未だ行われていません。ノイマン型コンピュータを基礎として、ネットワークに対応したり扱える情報量が増えに増えたのが今のPCなり家庭用ゲーム機なりスマートフォンなりといったところなのです。

まとめ

このように、70年以上前のコンピュータの思想が今も使い続けられているわけです。あと20年も経てばノイマン型コンピュータができてから100年が経過します。しかしどこかのタイミングでノイマン型コンピュータが過去のものになる時代が来るかも知れません。その時はコンピュータの一大転換期となることでしょう。ただ、もうすでに完成されたシステムを根本から覆すのもなかなか難しものです。ゲーム業界が2Dから3Dへと変遷できたのはまだゲーム業界ができてからそんなに年月が経っていなかったからではないでしょうか?しかし、ノイマン型コンピュータが提唱されてからはもうかなり長い年月が経っています。よほど効率の良い考え方や思想が出ない限り難しいかも知れません。では次回ですが、最適化についてお話していければと思っています。皆さんも最適化という言葉は聞かれたことがあるかも知れませんが、具体的にはどういう事を言っているのでしょうか?ご興味がありましたらまたお立ち寄りください。それでは失礼いたします。

この記事が気に入ったらサポートをしてみませんか?