コンピューター理論、チョットデキルようになりたい

コンピュータサイエンスの学び直しです

学び直し44日目:10章 コンパイラ#1:構文解析(導入部分)

記録

いよいよ高水準言語のコンパイラに突入。

コンパイラとは

コンパイラは、一言でいえば、変換を行うプログラムである」とのこと。VM のあたりから思っていたけど、やっぱりファイル変換プログラムだった。

コンパイラがやること

構文解析「コード生成」を行う。

構文解析

本章で扱うのはこれ。

与えられるソースコードの構文を理解して、そこからプログラムの意味*1を明らかにすること。何が宣言されているのか、どのような演算を行いたいのかなどを、構文を理解することで明確にするらしい。

構文理解が正しいか否かはコード生成して正しく動くことを以て担保するが、本章ではコード生成までやらないので XML ファイルを吐き出してテストするみたい。

コード生成

次章で扱うのがこれ。

構文解析した情報*2をもとに、変換先の言語でプログラムロジックを再構築すること。構文解析と組み合わせることでコンパイラとして完成する。

今日の筋トレ

リングフィット...

*1:semanic

*2:パースした情報ともいう