文档详情

编译(第9章 符号表).ppt

发布:2018-01-01约7.63千字共27页下载文档
文本预览下载声明
第9章 符号表 9.1 符号表的作用和地位 9.1 符号表的作用和地位 9.2 符号的主要属性及作用 总复习内容 一、概念题 选择填空(单项选择) 参见WORD文档 二、文法和语言 1. 文法的基本概念 包括:什么是文法?文法的作用、特点和种类等 2. 文法构造 给定语言构造文法(2型、3型) 给定文法识别语言 L(G) 3. 文法应用 最左推导 最右(规范)推导且能够指出归约的句柄 构造语法树且求其短语、简单短语和句柄 4. 文法分析和变换 删除空产生式、提取公因子、消除左递归 三、词法分析 1. 词法分析的基本概念 词法分析的任务、加工的对象和结果 2. 实现技术 正则文法(3型文法)、正则式与正则集 正则式的构造、正则文法到正则式的转换 有限自动机FA 有限自动机构造 正则式到FA、3型文法到FA、FA到3型文法 NFA到DFA的转换 四、自顶向下语法分析 给定一文法: 求SELECT集合 构造递归子程序、LL(1)分析表 * 9.1 符号表的作用和地位 ┇ ┇ 名字栏 属性栏 表项1 表项n 表项2 ┇ 其中, 名字栏 : 存放标识符的具体的名字 属性栏 : 相应标识符的各种属性 符号表的作用(功能): 1. 收集符号(标识符)属性 当标识符定义性出现时,建立符号表。如: int A; float B[5]; 则有: A 简变 整型 k B 数组 实型 0: 1: 名字栏 种类 类型 地址 0 4 5 1 C=0 float B=k+1 内情向量 2. 上下文语义的合法检查的依据 当标识符引用性出现时,查符号表。如: … int i,a[10] ; //定义性出现 … extern float i; //引用性出现 … …a[i]…; //引用性出现 则有: i 简变 整型 外部 k a 数组 整型 外部 0 1 名字 种类 类型 存储类 地址 0 9 10 1 C=0 int a=k+1 内情向量 又如: … int i [3,5] ; //定义性出现 … float i [4,2]; //定义性出现 … int i [3,5] ; //定义性出现 … 则后两次定义均为重复性定义: 即:在填表之前首先要查表。 内情向量 i 数组 整型 自动 0 1 名字 种类 类型 存储类 地址 0
显示全部
相似文档