8语义分析、中间代码与符号表.pptVIP

  • 6
  • 0
  • 约2.81千字
  • 约 18页
  • 2019-11-26 发布于湖北
  • 举报
语义分析、中间代码与符号表 学习目标: 掌握: 常见语法成分的中间代码形式; 符号表的组织管理 理解: 语义分析的内容 语义分析基础 语义分析的内容 主要是类型相容检查,有以下几种: 各种条件表达式的类型是不是boolean型? 运算符的分量类型是否相容? 赋值语句的左右部的类型是否相容? 形参和实参的类型是否相容? 下标表达式的类型是否为所允许的类型? 函数说明中的函数类型和返回值的类型是否一致? 其它语义检查: V[E]中的V是不是变量,而且是数组类型? V.i中的V是不是变量,而且是记录类型?i是不是该记录的域名? x+f(…)中的f是不是函数名?形参个数和实参个数是否一致? 每个使用性标识符是否都有声明?有无标识符的重复声明? 在语义分析同时产生中间代码,在这种模式下,语义分析的主要功能如下: 语义审查 在扫描声明部分时构造标识符的符号表 在扫描语句部分时产生中间代码 8.3 中间代码的形式 定义: 中间代码是一种复杂性介于源程序语言和机器语言之间的一种表示形式。 使用中间代码的好处: 中间代码与具体机器无关 对中间代码进行与机器无关的优化 形式: 逆波兰记号、三元式、四元式和树形表示 8.3.1 逆波兰记号 逆波兰表示法 将运算对象写在前面,把运算符写在后面,因而也称后缀式。 例如: 后缀式的计算机处理 后缀式的最大优点是易于计算机处理

文档评论(0)

1亿VIP精品文档

相关文档