ホーム » 「構文解析」タグがついた投稿
タグアーカイブ: 構文解析
演算子と言語処理系
前回追加で説明した逆ポーランド記法などの説明を再掲したうえで、構文解析といった言語処理系の話を解説する。 逆ポーランド記法 一般的に 1*2 + 3*4 と記載すると、数学的には演算子の優先順位を考慮して、(1*2)+( […]
意思決定木と構文解析
前回までの授業で2分探索木の説明をしてきたが、このデータ構造は他のデータを扱う際にも用いられる。ここで、意思決定木と構文木を紹介する。 意思決定木 意思決定木の説明ということで、yes/noクイズの例を示しながら、2分木 […]
コンパイラの技術と関数電卓プログラム(2)
前半では、1文字の数字と簡単な演算子で表現される計算式を再帰下降パーサで計算する処理で、演習を行った。 後半は、さらに実際のコンパイラに近いものとして、 C言語で広く使われている、字句解析ツール(lexical anal […]
コンパイラの技術と関数電卓プログラム(1)
コンパイラを作るための技術の基礎を学んでもらうために、 簡単な関数電卓プログラム作成を課題とする。 基本は、printf( “%d” , eval( “1+2*3”) ) […]
意思決定木と構文解析
前回までの授業で2分探索木の説明をしてきたが、このデータ構造は他のデータを扱う際にも用いられる。ここで、意思決定木と構文木を紹介する。 意思決定木 意思決定木の説明ということで、yes/noクイズの例を示す。これは2分木 […]
コンパイラの技術と関数電卓プログラム(2)
前半では、1文字の数字と簡単な演算子で表現される計算式を再帰下降パーサで計算する処理で、 演習を行った。 後半は、さらに実際のコンパイラに近いものとして、 C言語で広く使われている、字句解析ツール(lexical ana […]
コンパイラの技術と関数電卓プログラム(1)
コンパイラを作るための技術の基礎を学んでもらうために、 簡単な関数電卓プログラム作成を課題とする。 基本は、printf( “%d” , eval( “1+2*3”) ) […]
意思決定木と構文解析
意思決定木 意思決定木の説明ということで、yes/noクイズの例を示しながら、2分木になっていることを 説明しプログラムを紹介。 ((意思決定木の例:うちの子供が発熱した時)) 38.5℃以上の発熱がある? […]
電卓プログラム作成の補足
専攻科実験で、「字句解析と構文解析で電卓プログラムを作ろう」というネタを実施中。 サンプルプログラムを見せて、課題の1つが「式を読みやすくするための空白が使えるように改良」としているが、学生さんより、『最初に空白を全部消 […]
専攻科実験・コンパイラと関数電卓プログラム作成
コンパイラの技術と関数電卓プログラム(1) 課題 複数桁の数字が使えること。 式中に空白が使えること。 何らかの演算子を追加すること。 (例) %,単項演算子のマイナスなど 演算子が左結合か右結合か確認すること。 オプシ […]