プログラムを作るだけではなく、CPUレベルでの動作原理を知りたくなり参考書を探してました。
ネットで調べてみた感じでは、パタヘネ本というのが入門向けに良いらしいです。
というわけで、これからパタヘネ本を読み進めていく事にします。
ただ読んでるだけだと、途中で挫けそうなので、本blog上で学んだ事をアウトプットしていく事にします。
目的
プログラムのソフトウェアだけではなく、下のレイヤの知識を深める。 最近のコンパイラでは意識する必要はなくなりつつあるけど,ハードから見た 効率よいプログラム作りを意識できるようにする。 純粋に知的好奇心の満足として。 |
ルール
忙しくても、毎日10ページ以上読み進める。 図書館で借りた本なので、上巻を2週間以内で読みきる。 (別に買っても良いんですが、何時でも借りれるモノを買うのも場所がもったいないので...) 学んだ事をblogにメモとして残す。 自分用のメモ+他に同じ本を読む人のためのヒント(?)として 分からなかった事、本に載ってない事で、自分で調べた事も一緒にメモする。 練習問題は解くけど、回答はblog上に書かない 後学者の人が見たときに、ネタばれ防止として。 |
学んだ事を生かして…
PC上でCPUエミュレータを作れるようになる。 PICとかだと簡単そうなイメージ(なんとなく)が有るので、一旦ここをターゲットにする。 PICが、かなり難しそうならCASLエミュレーターでも可 (実用にしたいわけではないので) 本当はnesのエミュレータとか作れると面白そうだけど、 サウンド・グラフィック周りなど気に掛ける事が多そうなので将来のお楽しみに取っておく。 |
目次
第1章 コンピュータの抽象化とテクノロジ 1.1 はじめに 1.2 プログラムの裏側 1.3 コンピュータの内部 1.4 性能 1.5 電力の壁 1.6 方向転換:単体プロセッサからマルチプロセッサへ 1.7 実例:AMD Opteron X4の製造技術とベンチマーク・テスト 1.8 誤信と落とし穴 1.9 おわりに 1.10 歴史展望と参考文献(◎CDコンテンツ) 1.11 演習問題 第2章 命令:コンピュータの言葉 2.1 はじめに 2.2 コンピュータ・ハードウエアの演算 2.3 コンピュータ・ハードウエアのオペランド 2.4 符号付き数と符号なし数 2.5 コンピュータ内での命令の表現 2.6 論理演算 2.7 条件判定用の命令 2.8 コンピュータ・ハードウエア内での手続きのサポート 2.9 人との情報交換 2.10 32ビットの即値およびアドレスに対するMIPSのアドレシング方式 2.11 並列処理と命令:同期 2.12 プログラムの翻訳と起動 2.13 Cプログラムの包括的な例題解説 2.14 配列とポインタの対比 2.15 高度な話題:CのコンパイルおよびインタープリタによるJavaの実行(◎CDコンテンツ) 2.16 実例:ARMの命令 2.17 実例:x86の命令 2.18 誤信と落とし穴 2.19 おわりに 2.20 歴史展望と参考文献(◎CDコンテンツ) 2.21 演習問題 第3章 コンピュータにおける算術演算 3.1 はじめに 3.2 加算と減算 3.3 乗算 3.4 除算 3.5 浮動小数点演算 3.6 並列処理とコンピュータの算術演算:結合則 3.7 実例:x86における浮動小数点演算 3.8 誤信と落とし穴 3.9 おわりに 3.10 歴史展望と参考文献(◎CDコンテンツ) 3.11 演習問題 第4章 プロセッサ 4.1 はじめに 4.2 論理設計とクロック方式 4.3 データパスの構築 4.4 単純な実現方式 4.5 パイプライン処理の概要 4.6 データパスのパイプライン化と制御 4.7 データ・ハザード:フォワーディングとストール 4.8 制御ハザード 4.9 例外 4.10 並列処理と高度な命令レベル並列性 4.11 実例:AMD Opteron X4 (Barcelona)のパイプライン 4.12 高度な話題:パイプラインの記述およびモデリング用のハードウエア設計言語を使用したディジタル設計の概要とパイプライン処理の追加図解(◎CDコンテンツ) 4.13 誤信と落とし穴 4.14 おわりに 4.15 歴史展望と参考文献(◎CDコンテンツ) 4.16 演習問題 |
下のほうにある”タグ: パタヘネ”をクリックすると、読書メモ一覧が表示されます。 ↓

コンピュータの構成と設計 第4版(上) ハードウエアとソフトウエアのインタフェース (Computer Organization and Design: The Hardware/Software Interface, Fourth Edition)
関連記事
コメントを残す