『コンピュータシステムの理論と実装』を始めた
『コンピュータシステムの理論と実装 - モダンなコンピュータの作り方』を始めた。

本書では、これらコンピュータの構成要素をひとつずつ組み立てます。具体的には、NANDという電子素子からスタートし、論理ゲート、加算器、CPUを設計します。そして、オペレーティングシステム、コンパイラ、バーチャルマシンなどを実装しコンピュータを完成させて、最後にその上でアプリケーション(テトリスなど)を動作させます。
"NAND to Tetris" と呼ばれている本。HDL で NAND だけを使って論理ゲートを書くところからはじめて、最終的に GUI でテトリスを作るコンピュータの教科書。OS 作る本、CPU 作る本、コンパイラ作る本、いろいろある「勢いで買ったけど積んじゃう系の本」のひとつだと思う。多くの人がきっと買っただけ or 途中で挫折しているのではないだろうか。私も 2020 年に購入していたけど積んであった。
最近は仕事以外でほとんど技術的なことをしてない気がして、こういうものに気長に取り組むのもいいな~と思って再挑戦。一年くらいかけてできればいいなと思ってるが、はたしてどれくらいで終わるのだろうか。
かなりボリュームがあって、特に後半が難しいみたいで挫折要素満載だけど、今の自分ならやりきれる気がする。ここ数年で物事を継続する能力がかなり高くなったし、やりきるために自分と環境をコントロールするスキルも身につけた(まだジム通いも続いてるし)。
2021年に原著で第2版が出たらしく、2024年の年末には日本語訳も出ていた。ありがたや~。第1版と比べて構成も分かりやすくなって、各種シミュレーターも Web 上で構築されててモダンな感じ。Web でできるからローカルに保存する必要はないんだけど、ちゃんとやったんだよという記録を残していくために public repository に作業を残しておくことにした。
今は Not, And, Or, Xor, Mux, Demux の論理ゲート作った。テトリスまで先は長い。