トゲトゲ団

技術系サークル「トゲトゲ団」ですよ

技術書典11の新刊 「CPUの気持ちが知りたいですか?」

CPUって、普段どんな気持ちで処理しているんでしょうね。本書では、そのようなCPUの気持ちを知るために抑えておくべき技術について解説をしています。

そのようなCPUの気持ちを知るために、CPUが普段どんな処理をしているのかといった事や、アセンブリ言語といったようなソフトウェア関連の話はもちろんのこと、CPUの気持ちを理解するためには絶対におさえておくべきハードウェアであるキャッシュやパイプラインについても解説しています。

本書を読んで、ぜひCPUの気持ちをゲットしてください(?)

toge2dan.booth.pm

もくじ

まえがき
第1章 CPUと友達になろう
  1.1 最初はお友達から
  1.2 実⾏ファイルを作って実⾏してみよう
  1.3 実⾏ファイルの中⾝
  1.4 実⾏プログラムの中⾝
  1.5 まとめ
第2章 アセンブリ⾔語をなんとなく読む
  2.1 アセンブリ⾔語をコンパイラで出⼒する
  2.2 アセンブリ⾔語を読みすすめていく
  2.3 アセンブリ⾔語のコードを構成するもの
  2.4 最適化したコード
第3章 レジスタ
  3.1 レジスタと変数の違い
  3.2 汎⽤レジスタ
  3.3 専⽤レジスタ
  3.4 ステータスレジスタをもっと詳しく
第4章 命令
  4.1 ⽂法はあった、ような…
  4.2 命令とは
  4.3 命令の分類
  4.4 メモリ操作
  4.5 算術演算
  4.6 論理演算
  4.7 ⽐較命令
  4.8 並列命令(SIMD 命令)
  4.9 分岐命令
  4.10 その他
第5章 分岐命令
  5.1 分岐命令とは
  5.2 条件分岐命令をコードで説明する
  5.3 条件を設定する
  5.4 アセンブリ⾔語で書き直す
  5.5 分岐命令がなぜ重要なのか
第6章 RISCとCISC 
  6.1 RISCとは
  6.2 コンピュータの歴史をざっくり
  6.3 RISCの特徴
  6.4 RISCとコンパイラ
  6.5 現在のRISCとCISCの関係
第7章 CPU とメインメモリ
  7.1 CPU とメインメモリの関係
  7.2 メモリアドレス
第8章 パイプライン
  8.1 パイプラインとは
  8.2 とんかつの調理でたとえてみる
  8.3 パイプラインのない時、ある時
  8.4 内部の処理
  8.5 多段パイプライン
  8.6 理想と現実
  8.7 ペナルティ対策
  8.8 分岐予測と投機的実⾏
第9章 キャッシュメモリ
  9.1 コンピュータでのキャッシュとは
  9.2 キャッシュメモリの役割
  9.3 とてつもなく遅いメインメモリ
  9.4 キャッシュの種類
  9.5 L1 キャッシュ、L2 キャッシュ
  9.6 キャッシュを活⽤するには
  9.7 キャッシュメモリの効果を確かめる
付録A 参考資料
あとがき