编译原理-符号表
1.符号表的作用:符号表是编译程序的一个主要数据结构,符号表通常与编译程序的各个阶段有关,编译程序的各阶段需要不断向符号表输入信息,或者通过它消除二义性。
具体有下面几个:
(1)收集符号的属性。
(2)提供上下文语义的合法性检查的依据。
(3)作为目标代码生成阶段地址分配的依据。
2.符号表的内容:
一般来说,符号表的每一项(称为表项)包含两个部分(或称区段、字域),即名字栏和信息栏。
3.符号表的总体组织:
第1种组织结构:按照属性种类完全相同的那些符号组织在一起。
第2种组织结构:把所有语言中的符号都组织在一张符号表中。
第3种组织结构:折中方式。
4.符号表的构建与查找:
线性查找;对折查找;杂凑技术(杂凑法是一种争取查表、填表两方面能高速进行的统一技术。
)。