语义精确分析.pptVIP

  • 2
  • 0
  • 约1.29万字
  • 约 81页
  • 2019-07-09 发布于广东
  • 举报
第 6 章 语义分析 学习目标: 掌握: 依赖图, 属性计算算法 理解: 属性文法的概念, 合成和继承属性, S-属性文法, L-属性文法, 符号表 语义分析概述 1 语义 2 语义分析 3 语义分析的典型实现 4 语义分析的方法 1 语义 与被翻译过程的最终含义密切相关的信息 两种语义 静态语义 被静态定义,在执行前可以确定. 编译器实现静态语义分析 动态语义 只有在执行时才能确定 2 语义分析 要求根据编成语言的规则建立正确性,并保证其正确执行。 典型的语义分析有: 静态类型检查: 运算符的分量类型是否相同? 赋值号的左右边类型是否相同? 形参与实参类型是否相同? 数组下标的类型是否为所允许的类型? 函数说明中的函数类型和返回值的类型是否一致? 其他语义分析: V[E]中的V是不是变量,而且是数组类型? V.i中的V是不是变量,而且是记录类型?i是不是该记录的域名? 每个使用性标识符是否都有声明?有无标识符的重复声明? 3 语义分析的典型实现 构造符号表、记录声明中建立的名字的含义 在表达式和语句中进行类型推断和类型检查以及在语言的类型规则作用域内判断它们的正确性。 4 语义分析的方法 描述 属性文法 用来描述语义 实现 语法制导语义分析 程序的语义内容与它的语法紧密相关的 属性文法 属性文法包括一组属性和属性等式或语义规则 属性是必须进行计算的

文档评论(0)

1亿VIP精品文档

相关文档