根据变量存储类别及作用域规则-Read.pptVIP

  • 2
  • 0
  • 约9.26千字
  • 约 77页
  • 2019-08-12 发布于天津
  • 举报
根据变量存储类别及作用域规则-Read.ppt

第九章 符号表 9.1 符号表的作用和地位 在编译程序中符号表用来存放语言程序中出现的有关标识符的属性信息,这些信息集中反映了标识符的语义特征属性。 在词法分析及语法在分析过程中不断积累和更新表中的信息,并在词法分析到代码生成的各阶段,按各自的需要从表中获取不同的属性信息。 不论编译策略是否分趟,符号表的作用和地位是完全一致的。   ① 收集符号属性   ② 上下文语义的合法性检查的依据   ③ 作为目标代码生成阶段地址分配的依据 ① 收集符号属性 编译程序扫描说明部分收集有关标识符的属性,并在符号表中建立符号的相应属性信息。 例如,编译程序分析到下述两个说明语句   int A;   float B[5];   则在符号表中收集到关于符号A的属性是一个整型变量,关于符号B的属性是具有5个浮点型元素的一维数组。 ② 上下文语义的合法性检查的依据 同一个标识符可能在程序的不同地方出现,而有关该符号的属性是在这些不同情况下收集的。通过符号表中属性记录可进行相应上下文的语义检查。  例如,在一个C语言程序中出现   …   int i [3,5]; //定义整型数组i   …   float i[4,2]; //定义实型数组i,重定义冲突   …   int i [3,5]; //定义整型数组i,重定义冲突   … ③ 作为目标代码生成阶段地址分配的依据 每个符号

文档评论(0)

1亿VIP精品文档

相关文档