riceIsland

学習メモ・備忘録

← 記事一覧に戻る

プログラムはなぜ動くのか(1章)

やったこと

  • 引き続き、プログラムはなぜ動くのかの第1章を読んだ(読んでいる)

内容

  • 前回の記事では、CPUがプログラムを解釈・実行する装置であるという情報よりもプログラムをどのように解釈しているのかを 理解することが重要であることを認識した。
  • その上で、CPUを理解するためにレジスタという装置の役割を説明できるようにならないといけない。
  • プログラムはレジスタを対象に記述されているから。
  • レジスタがプログラムをどのように処理しているのかを理解するために、アセンブリ言語で記述された演算処理のプログラムを見た。
  • アセンブリ言語はマシン語コードと1対1で対応しており、CPUがマシン語をどのように実行しているのかがわかる。

独り言

  • アセンブリ言語とかは聞いたことある概念だったけど、知らなかったので、こういうところで登場する概念だったんだなという 気づきが得られた。
  • 前回まではレジスタが命令やデータを格納する場所であることと、役割に応じて種類があることは理解していたが、アセンブリ言語で 書かれた演算処理のプログラムを学んだことで、マシン語レベルになったコードがどのようにレジスタで処理されているのかを知った。
  • 次回は、条件分岐などの処理や関数呼び出しの仕組みを理解する。