コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方 (Nand2Tetris)
Author:
ニッサン,ノーム
エルサレム・ヘブライ大学(イスラエルの国立大学)のComputer Science and Engineering研究所の教授
ショッケン,サイモン
情報技術のIDB教授。Interdisciplinary Center Herzliya(イスラエルの私立大学)のEfi Arazi School of Computer Science学部長
斎藤/康毅
東京工業大学にて学士号、東京大学にて修士号(学際情報学)を取得。株式会社チームラボにて、コンピュータビジョン・機械学習に関する研究、またインタラクティブシステムの開発に従事する.
Contents:
コンピュータを理解するための最善の方法はゼロからコンピュータを作ることで、その構成要素は、ハードウェア、ソフトウェア、コンパイラ、OSに大別できる。本書では、これらの構成要素をひとつずつ組み立てる。具体的には、NANDという電子素子からスタートし、論理ゲート、加算器、CPUを設計。オペレーティングシステム、コンパイラ、バーチャルマシンなどを実装しコンピュータを完成させて、最後にその上でアプリケーション(テトリスなど)を動作させる。実行環境はJava(Mac、Windows、Linuxで動作)。
Schedule
| No | Date | Pages | Name | Title (Note) | Slide |
|---|---|---|---|---|---|
| 1 | 5/27 | 1 | zak | ブール論理 | Slide |
| 2 | 6/6 | 27 | sizu | ブール算術 | Slide |
| 3 | 6/10 | 41 | ed | 順序回路 | Slide |
| 4 | 6/20 | 59 | moririn | 機械語 | Slide |
| 5 | 3/20 | 85 | cmer | コンピュータアーキテクチャ | Slide |
| 6 | 3/20 | 111 | ed | アセンブラ | Slide |
| 7 | 3/24 | 133 | zak | バーチャルマシン #1 : スタック操作 | Slide |
| 8 | 3/30 | 167 | sizu | バーチャルマシン #2 : プログラム制御 | Slide |
| 9 | 3/30 | 191 | moririn | 高水準言語 | Slide |
| 10 | 3/30 | 223 | moririn | コンパイラ #1 : 構文解析 | Slide |
| 11 | 4/12 | 249 | nora | コンパイラ #2 : コード生成 | Slide |
| 12 | 4/12 | 277 | cmer | オペレーティングシステム | Slide |
| 13 | 315 | さらに先へ |