ITの勉強をしていると、そもそもどうやってコンピュータって動いているの?という疑問を抱くことがあると思います。
「コンピュータの5大装置に出てくるCPUやメモリ、HDDがあって、マザーボードの上でそれらが繋がって色んなことができるんでしょ?」
と、これだけの理解でも十分なのですが、CPUはどうやってできているの?メモリにはどうやって情報が格納されるの?ここまで知っておくと、ITの世界が更に広がっていきます。
そうなるとコンピュータを作るところから理解すれば良い、ということになりますので、今回はそんな時にオススメな一冊をご紹介します。
本の紹介
コンピュータを理解するために、私がおススメする一冊はこの本です!
「コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方」
この本はコンピュータ関連の書籍として歴史がある「O'Reilly(オライリー)」が出版社なので、ちょっと難しそうな感じはするのですが、読み易い構成になっていると思います。
この本のおススメポイントを説明していきます。
おススメなポイント その1(構成が良い)
先ずは本の構成(コースマップ)がしっかりと分かれていて、「ブール論理」や「ALU」、「メモリ」などのハードウェアプラットフォームから始まり、「アセンブラ」や「コンパイラ」、「OS」、「アプリケーション」などのソフトウェア階層の解説に進んでいきます。
つまり、ハードウェアからソフトウェアの解説に進んでいくので、コンピュータの仕組みが理解し易くなっています。
章立ては図に表すと以下のようになっています。
おススメなポイント その2(実装まで理解できる)
この本は「抽象と実装」というコンセプトでコンピュータ理論が解説されています。
各章は「背景」の節から始まって、その節で関連する概念やハードウェア、ソフトウェアシステムについて説明されています。
続いて「仕様」の節があって、具体的な要素の動きや振る舞いに関して、明確に説明されています。
そして、具体的な「実装」の節へと進んでいきます。
最後に「プロジェクト」があって、実際にツールを使ってハードウェアの動きやソフトウェアを作ってみることができます。
まとめると各章は以下の流れになっています。
本書の各章の流れ(例としてブール論理)
- 背景(ブール代数やブール式、論理ゲートの説明)
- 仕様(And、Or、マルチプレクサの説明)
- 実装(NandゲートからAndやOrの回路を作る)
- 展望(様々なゲートから回路を作るためのアプローチの解説)
- プロジェクト(ハードウェアシミュレータの使い方の解説)
おススメなポイント その3(実際にコンピュータを作れる)
本書の中に以下記載があります。
「本書で述べられているコンピュータシステムは”本物”である」
つまり、実際に組み立てることができ、実際に動かすことができます!
本を読むだけでなく、実際に手を使って作ってみることで、理解が飛躍的に深まるということです。
そのためには時間も費やしますが、「コンピュータをゼロから作り上げたい」ということを実現できます。
この本一冊でここまでできるのは凄いですよね!
まとめ
今回はコンピュータをゼロから理解したい、と思った時におススメな本として「コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方」を3つのおススメポイントに分けて紹介しました。
「コンピュータをゼロから作る」なんて不可能に思えますが、この本にはその方法が説明されているので、実際にシミュレータやツールを使って作ることもできますし、読むだけでも「コンピュータをゼロから理解する」まではできると思います。
また、全部完璧に理解しなくても、部分的な理解にも役立つと思います。
コンピュータを根本的に理解してみたい方は一度手に取って読んでみることをおススメします。
以上です!