本项目是编译原理实验环节的一个综合型、应用型实验,最终实现自动绘制出 Oberon-O 源程序中不同函数模块的流程图。在本实验中需开发一个面向Oberon-0 的逆向工程工具,根据一个输入的 Oberon-0 源程序自动绘制每个过程的程序流程图。Oberon-0 是著名的 Pascal 和 Modula-2 语言的后继者Oberon 语言的一个精简子集。
本项目包含三个部分:
-
熟悉 Oberon-0 语言定义,并编写一个正确的Oberon-0源程序。
-
生成词法分析程序JFlex:下载一个词法分析程序自动生成工具JFlex,并利用该工具自动产生 Oberon-0 语言的词法分析程序。
-
生成语法分析程序:下载一个语法分析程序自动生成工具 JavaCUP,利用该工具自动产生一个 Oberon-0 语言的语法分析和语法制导翻译程序。