编译原理实践及应用第1章编译原理概述(1030KB).pptVIP

  • 25
  • 0
  • 约7.21千字
  • 约 42页
  • 2018-04-01 发布于未知
  • 举报

编译原理实践及应用第1章编译原理概述(1030KB).ppt

* * * * * * * * * * * * * * * * * * * * * * 第*页 编译程序中的主要数据结构 (续) Token表 符号表 常数表 错误信息 语法树 中间代码表 临时文件 目标代码表 * 第*页 (1) Token表 当扫描程序将字符收集到一个记号中时,它通常是以符号表示这个记号;这也就是说,作为一个枚举数据类型的值来表示源程序的记号集。 (2) 语法树(syntax tree) 如果分析程序确实生成了语法树,它的构造通常为基于指针的标准结构,在进行分析时动态分配该结构,则整棵树可作为一个指向根节点的单个变量保存。结构中的每一个节点都是一个记录,它的域表示由分析程序和之后的语义分析程序收集的信息。 编译程序中的主要数据结构介绍: * 第*页 (3) 符号表(symbol table) 这个数据结构中的信息与标识符有关:函数、变量、常量以及数据类型。符号表几乎与编译器的所有阶段交互:扫描程序、分析程序或将标识符输入到表格中的语义分析程序;语义分析程序将增加数据类型和其他信息;优化阶段和代码生成阶段也将利用由符号表提供的信息选出恰当的代码。因为对符号表的访问如此频繁,所以插入、删除和访问操作都必须比常规操作更有效。尽管可以使用各种树的结构,但杂凑表却是达到这一要求的标准数据结构。有时在一个列表或栈中可使用若干个表格。 * 第*页

文档评论(0)

1亿VIP精品文档

相关文档