今回はコンピュータの仕組みを解説するよ
これまでのプログラミングの話とどう違うの?
プログラミングはコンピュータに命令を送って動かすソフトウェア的な部分で、今日説明するのはハードウェア的な部分になる。
ソフトウェア?ハードウェア?
ソフトウェアってのは、例えば野球とかサッカーとか、ルールの中で動くプログラムとかを表していて、ハードウェアってというのは、僕たちの体とかパソコン本体のことを表しているんだ。
今回はパソコン本体がどういう仕組みになっていて、プログラムが動くというのはどういう形なのかというのを説明していくよ。
コンピュータの仕組みとは、入力、演算、出力
コンピュータは基本的には「入力」「演算」「出力」の3つのステップで動くんだ。
まず「入力」は、私たちがキーボードやマウスを使ってコンピュータに何かを教えること、スタートの部分にあたるよ。
次に「演算」は、コンピュータが入力された情報を使って計算や問題解決をすること。
最後に「出力」は、コンピュータが演算の結果を僕たちに教えるところ。
例えば、画面に何かを表示したり、音を出したりだね。
この三つの仕組みを利用することで、僕たちからパソコンに命令を送ったり、パソコンからの返答として画面に文字や計算結果が表示されたりするわけだ。
どんなコンピュータにも当てはまる3ステップだよ。
コンピュータの中身をクローズアップ!
じゃあもう少しコンピュータの中をのぞいてみよう。
コンピュータの中にはいくつかのパーツがあるんだ。
これらが一緒に動くことで、コンピュータは動くんだよ。
主なパーツには、「CPU(中央演算処理装置)」「メモリ」「ハードディスク」「グラフィックボード(GPU)」などがある。
CPUはコンピュータの頭脳で、計算や命令の処理を行うよ。
メモリは一時的に情報を保存する場所で僕たちでいうところの手にあたる
ハードディスクは情報を長期的に保存する場所、ファイルとかを置くところだね。
グラフィックボードというのは、サブの計算を行うところで、CPUほど難しい問題は解けないけどスピード重視の計算なら超早くできる装置になるよ。
パソコンでゲームをするときには非常に役に立つ。
これらのパーツが組み合わさることで、入力から演算、出力とコンピュータは動くことができるんだ。
プログラムからコンピュータが動くまで
プログラムは、コンピュータに何をするかを教える命令の集まりのことだったね。
僕たちがプログラム言語でプログラムを書くと、それがコンピュータの中にある「コンパイラ」や「インタプリタ」によって機械語に翻訳され、CPUがそれを読み取り、命令に従って動くんだ。
その結果が僕たちの目の前のコンピュータの画面に表示されるわけ。
入力はプログラムのスタートを意味していて、演算はプログラムの命令通りの処理に動くこと、出力は結果を画面表示させたりすることを指すわけだね。
なるほどぉ
プログラムをこれまでは考えてきたけど、実際に動くのはコンピュータなわけだからプログラム側でもスタートとゴールは考えておく必要がありそうだね。
スタートがわからないとプログラムをどうやって始めればいいかわからないし、ゴールが決まっていないとせっかくのプログラムの答えがどこに表示されるのかもわからないから。
その通り!
アイコンをクリックすることでスタートするプログラムなのか、結果が画面に表示されるのか、別のファイルに書き込まれるのかなどゴールを決めることもプログラムを書く上では非常に大事だよ。
コンピュータとOSの関係
コンピュータと切っても切り離せないのがOSだよ。
OSは「オペレーティングシステム」の略で、コンピュータの機能をうまく動かすためのプログラムだね。
WindowsやMac OS、Linuxなどの種類があるよ。
OSはプログラムとコンピュータのハードウェア(物理的な部品)の間の仲立ち役で、プログラムがハードウェアを直接操作しなくてもいいようにしてくれるんだ。
詳しくは前回話しているから、忘れてたらそっちを確認してみて。
コンピュータの仕組みはだいぶわかってきたけど、そもそもコンピュータを知ってどうするの?
プログラムさえ書ければ正直コンピュータがどう動いているかなんて特段気にしなくていいと思っちゃうんだけど
確かにOSをいじったり、コンピュータの命令分を直接書き換えたりすることは基本ない。
けど、仕組みを知ることでプログラムを作るときにも役に立つことがあるんだよ。
仕組みを知れば謎が解ける!
コンピュータの仕組みを知ると、なぜコンピュータがあんなに複雑なことができるのか、なぜ時々エラーが起こるのか、などの謎が解けるんだ。
そして、もし何か問題が起きたときに、それをどうやって解決するかがわかるようになるかもしれない。
知っていれば5分でわかる原因なのに、仕組みを知らないから1ヶ月も原因がわからずプログラムばかりを修正しているというパターンだってあるんだ。
それに何より、仕組みを知ることでコンピュータのことがますます好きになれるじゃないか。
めちゃめちゃ難しいようで、実はそんなに難しくないコンピュータがだんだん可愛くなってくる頃じゃないかな。
まとめ
かわいいかはわからないけど、随分コンピュータとかITについての不安は減ってきたかな
えーー僕はかわいい部分に共感して欲しいんだけど…
まぁわかってきたならいいことかな。
コンピュータは一見理解不能なすごいことが行われているように見えるけど、こうやって紐解いていくと単純な仕組みが連なっているだけというのがわかると思う。
単純な仕組みにまで分解すれば、理解だって難しくはない。
少しずつ知識をつけていくことで、いつの日かコンピュータ全体がわかるようになる日が来るからその日まで一緒に頑張ろうね!
わかった!!!