编译原理符号表9.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
符号表项的排列 线性组织 符号表中表项按它的符号被扫描的先后顺序登录; 管理简单但运行效率低; ……….. …a…… ……..b.. …..a….. ……..d.. …c……. ……b…. 符号表项的排列 排列组织及二分法 符号表中表项按其符号的字符代码串的值的大小排列; 排序表的空间组织和存储开销与线性表相同,但运行效率高于线性表,算法复杂性也高于线性表; ……….. …a…… ……..b.. …..a….. ……..d.. …c……. ……b…. 符号表项的排列 散列组织 对符号进行某种函数操作(杂凑函数)所得的函数值确定它在符号表的位置; Vhash = fhash(符号代码值) 改进:Lhash = mod(Vhash,N) ……….. …a…… ……..b.. …..a….. ……..d.. …c……. ……b…. 符号表项的排列 散列组织需事项注意: 散列冲突,解决方法是多次散列方法; 散列函数的选择: 静态符号表 动态符号表 对符号代码的位操作作为杂凑函数,如符号代码的字段叠加或加权叠加以及符号代码的对折或多对折等位操作; 符号表的组织 符号表的总体组织 符号表项的排列 关键字域的组织 其他域的组织 关键字域的组织 有关符号的基础知识 保留字 操作符 标识符 外部名(前6个字符可以惟一地区分) 内部名(前31个字符可以惟一地区分) 可见,标识符的内部规则是符号表关键字组织的基础和依据; 关键字域的组织 等长关键字域(段)符号表 设置关键字段为标识符的最大长度; 关键字域的组织 不等长关键字段符号表 采用关键字池的索引结构。 符号表的组织 符号表的总体组织 符号表项的排列 关键字域的组织 其他域的组织 其他域的组织 等长属性值域组织 符号表中符号的属性值具有相同类型且等长; 不等长属性域组织 符号表中符号的属性值具有相同类型但长度不同; 下推链域的组织 等长属性值域组织 可以取相应的数据类型表达属性值 符号布尔性质的属性域 defined 1(true) 表示已定义 defined 0(false) 表示未定义 表示符号的基本数据类型 Data-type 3个bit位(整型值) Char 0 0 0 (0) short 0 0 1 (1) int 0 1 0 (2) long 0 1 1 (3) unsigned 1 0 0 (4) float 1 0 1 (5) double 1 1 0 (6) 等长属性值域组织 可以取相应的数据类型表达属性值 符号变量: 存储类别——数据类型一样的构造方式 存储位移——整型量表示相对位移量 等长属性值域组织 可以取相应的数据类型表达属性值 符号之间关系的属性可用指针或指针链来构造; 如:函数和形参关系 func1(para1,para2,para3) func2() 等长属性值域组织 可以取相应的数据类型表达属性值 结构 struct tag1 { memb1 memb2 struct tag2 { memb3 memb4 memb5} memb6 memb7 } stv; 不等长属性值域组织 另设空间存放属性值 数组的内情向量 array1(subscrip1,subscrip2) array2(subscrip3,subscrip4,subscrip5,subscrip6) 不等长属性值域组织 另设空间存放属性值 C语言中数组特别的含义 int abc[3][4][2]; 不等长属性值域组织 另设空间存放属性值 结构 struct tag1 { memb1 memb2 struct tag2 { memb3 memb4 memb5} memb6 memb7 } stv; 不等长属性值域组织 复合属性域的组织 存在若干个可用位表示的信息 该符号变量是否初始化 该符号是否是结构成员 该符号是否是标号 该符号是否是保留字 下推链域的组织 实现同名标识符的语义功能 9 符号表 符号表的作用和地位 符号的主要属性及作用 符号表的组织 符号表的管理 符号表的管理 符号表的作用反映了符号表的行为: 符号表的初始化 符号的登录 符号的查

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档