网站大量收购独家精品文档,联系QQ:2885784924

编译原理(第5版)-课件(更新)2025第6章 符号表的组织与管理 .pptx

编译原理(第5版)-课件(更新)2025第6章 符号表的组织与管理 .pptx

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第6章符号表的组织与管理;第6章符号表的组织与管理;6.1符号表的作用与生成期;在分析说明语句时,编译程序根据说明语句信息将标识符的相应属性

如标识符的类型:实型,整型,布尔型等;

标识符的种属:数组名,变量名,过程名,函数名等;

标识符的作用域:全局变量或局部变量等信息登录到符号表中。

;辅助上下文语义的正确性检查

如对运算对象和运算符进行类型检查,对变量进行先定义后使用检查等。

通过符号表中记录的属性可进行上述语义检查。;辅助目标代码生成

在目标代码生成阶段,符号表是数据存储分配的依据。要形成能运行的目标代码,需要对程序中引用的标识符分配存储单元,而存储单元的分配与标识符属性相关,与属性相关的信息可通过查符号表获取。

;符号表的生成期

符号表的建立可以开始于词法分析阶段,也可以放到语法、语义阶段,但符号表的使用有时会延续到目标代码的运行阶段(如数组下标地址计算的需要等)。

;6.2符号表的内容;?数组

包括维数、界差、上下界、计算下标地址时涉及的常量等,放在数组信息向量表(内情向量表)中。

?函数或过程

包括参数的个数、类型、次序、是否允许递归等。;(2)地址码

?常量或简单变量

一般是该量在数据区所占单元的绝对地址或相对地址。

?数组

是该数组在数据区中的首地址。

?函数或过程

是该函数或过程的分程序入口地址。

;6.2符号表的内容;6.3符号表的组织;符号表的表格形式

名字栏存放标识符的名字,信息栏存放名字相关属性。

;符号表的总体组织

1.编译程序按名字的不同属性构造出多个符号表。如常量表、变量名表等。

符号表结构相同,表项等长。不便管理。

2.编译程序把语言中的所有名字组织在一张符号表中。

符号表便于管理,但表结构复杂且表项不等长。

;6.3符号表的组织;6.3符号表的组织;6.3符号表的组织;6.4符号表的构造和查找;6.4符号表的构造和查找;Name;6.4符号表的构造和查找;本章小结;本章小结;本章小结;本章小结

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档