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

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

2020-04-01から1ヶ月間の記事一覧

学び直し46日目:10章 コンパイラ#1:構文解析(仕様、実装、展望、プロジェクト)(10章終了)

記録 記録 どんなことやってるかは、何となく理解できたと思う。45日目にまとめたようなことを実装して、Jack プログラムをソースとして与えることでトークナイズとパースが実行されたXMLファイルを出力している。このXMLファイルの中身を見れば、パーサによ…

学び直し45日目:10章 コンパイラ#1:構文解析(背景)

記録 構文解析器のしくみ トークナイザ パーサ 再帰的な構文解析のざっくり理解 記録 構文解析が、トークナイザとパーサの2つの仕事に分かれていることを学んだ。 構文解析器のしくみ 構文解析器は、トークナイザとパーサから成る。トークナイザでプログラム…

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

記録 コンパイラとは コンパイラがやること 構文解析 コード生成 今日の筋トレ 記録 いよいよ高水準言語のコンパイラに突入。 コンパイラとは 「コンパイラは、一言でいえば、変換を行うプログラムである」とのこと。VM のあたりから思っていたけど、やっぱ…

学び直し43日目:9章 高水準言語:(一通り読んでさらっと終了)

記録 気になったところメモ 今日の筋トレ 記録 かなりごぶさた。かなり妥協しているが、とりあえず一通り読めました。高水準言語として、結構シンプルな Jack という言語に慣れ親しむための章。使い方は C とか Python とか、一般的な言語を触ったことがあれ…

学び直し42日目:8章 バーチャルマシン#2:実装、展望、プロジェクト(8章強引に終了)

記録 実装 ブートストラップコード 展望 今日の筋トレ 記録 ダレてきてしまったので、いったんこの章を完了とする。 実装 要点としては、VM ではスタック構造をとるため、関数呼び出しやフロー制御(分岐やループ処理)が入れ子型の構造となってることを理解…