CMM语言解释器
解释器在语法分析的基础上,对语法分析程序的输出,语法树遍历,完成语义检查并生成代码,代码以四元式的形式输出,cmm解释器解释执行四元式序列,完成对cmm语言的解释。
一.系统的输入:CMM源程序
系统的输出: 1,单词(token)序列(词法分析)
2,语法树(语法分析)
3,四元式序列,cmm执行结果(语义分析)
二.程序结构示意图
语法分析Parse.java 单词(token) 词法分析scanTokens.java Cmm源程序 语法树 语义分析Execut.java
程序输出 解释器cvm.java 四元式序列 三.程序说明
1.Cmm为解释性语言 语法分析和语义分析相对独立 解释器解释执行中间代码(四元式) 2.变量申明 int a;(未初始化)
Int a=1;(初始化)
包括(int 和real两种变量类型)
3数组的声明方式 例如 int[10] a;(未初始化) int[2] a={1,2,3}(初始化的数组) 包括(int 和real两种数组类型)
4,中间代码说明
(type,value1,value2,value3) Type值:
While(表示一下序列为一个whlie循环)
Con(若value1为真 执行下一语句 否则 gotovalue2) End(while 的结束标记) New(声明语句) Write(输出 value1) Halt(表示停止)
<(value3=value1

