1.TINY语言
TINY语言
小型语言,便于理解编译原理。
TINY语法
-
分号分隔
-
变量都是整型变量
-
If语句和repeat语句
-
read语句和write语句
-
花括号有注释,不可嵌套
TINY编译器
main——主程序,分配和初始化全局变量
globals——数据类型定义,全局变量
util——
scan——扫描程序
parse——语法分析程序
symtab——符号表
analyze——语义分析
code——用于依赖目标机器的代码生成程序
cgen——
TM机
TM具有精简指令计算机(RISC)的一些特性。RISC中,所有的计算和测试均在寄存器中进行,而且地址模式极为有限。
2.C-Minus
C的一个子集语言。
设计方案
C- 惯用词法
-
关键字
-
专用符号
-
ID和NUM正则表达式
-
空格的定义
-
注释的定义
C- 的语法和语义
-
BNF列表
-
对每一条BNF的解释