编译原理总结9-符号表及错误处理.ppt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 总结 符号 错误 处理
- 资源描述:
-
,*,1,S.P,O.P,语义分析与中间代码,生成目标程序,代码优化,语法分析程序,词法分析程序,错,误,处,理,符,号,表,管,理,符号表与错误处理,2,6.1,符号表管理,符号表的作用:,(1),收集符号的各种信息,(2),语义检查的依据,(3),目标代码生成阶段地址分配的依据,3,6.1,符号表管理,名字栏,(NAME),信息栏,(INFORMATION,),第,1,项(入口,1,),第,2,项(入口,2,),第,n,项(入口,n,),信息栏包含许多子栏和标志位,用来记录相应名字和不同属性,,由于查填符号表一般是通过匹配名字来实现的,因此,名字栏,也称主栏。主栏的内容称为关键字(,key word,)。,符号表的内容:,名字栏信息栏,4,符号表的组织,6.1,符号表管理,符号表的总体组织:,(,1,)多张,(,2,)一张,(,3,)前两种的折中,符号表项的组织:,(,1,)线性组织,(,2,)排序组织,(,3,)散列组织,:,效率高,为多数编译程序采用,5,6.1,符号表管理,(,1,)向表中填入一个新标识符;,(,2,)对于给定一个标识符:,查找是否在表中;,访问它在表中的相关信息;,在表中填写或更新它的某些信息。,(,3,)更新或删除一个或一组无用的项。,符号表的操作,6,建立和访问符号表的时机,6.1,符号表管理,1,、多遍编译器,符号表由词法分析器创建,词法分析器所产,生的记号的属性就是变量在符号表中的位置。,7,建立和访问符号表的时机,6.1,符号表管理,2,、单遍编译器,8,多遍的优点:,对语法分析器来讲降低了文法的复杂性,允许用更系统的方法对上下文有关的错误进行检测和校正。,建立和访问符号表的时机,6.1,符号表管理,9,词法错误:在词法分析阶段就可以发现的错误;,语法错误:程序的书写不符合语法规则;,语义错误:,静态语义错误:编译程序可以发现;,动态语义错误:源程序虽然能够被编译和执行,但是,结果不对。一般是逻辑上的错误。,违反环境限制的错误:,由于实现方面的问题,有些编译器不接受语言的全集。同时语言本身也有限制。,错误种类,6.5,错误处理,标识符的长度限制,函数说明嵌套的深度,,数组的最大层数,10,词法错误:不合法单词,例:,mian,(),int,3sum,;,语法错误:,源程序在语法上不符合文法,例:,Ax,y=B+*C,6.5,错误处理,11,语义规则,标识符先说明后引用,标识符引用要符合作用域规定,过程调用时实参与形参类型一致,参与运算的操作数类型一致,下标变量的下标不能越界,语义错误主要包括:,程序不符合语义规则,或,超越具体计算机系统的限制,6.5,错误处理,12,超越系统限制:,(,计算机系统和编译系统,),1.,数据溢出错误,常数太大,计算结果溢出。,2.,符号表、静态存储分配数据区溢出。,3.,动态存储分配数据区溢出。,6.5,错误处理,13,6.5,错误处理,错误复原,当编译程序碰到源程序中错误的时候,应该设法从错误中复原,并继续扫描程序以给出更多的提示信息。更多的信息使得程序员能够更加方便地修改程序。,可能复原是错误的。所以一般来讲,编译程序给出的第一个错误是可靠的,而其他的错误信息可能是不准确的。,14,常用的方法是:对于某个语法成分,如果该语法成分有一个非常确定的符号作为结束符号。那么当扫描这个语法成分时发现错误,程序试图继续扫描到该结束符号。并把这个符号之前的东西规约成为相应的语法成分。,6.5,错误处理,错误复原,15,6.5,错误处理,错误定位,在扫描程序检查到错误的时候,需要告诉用户,其错误发生在源程序的什么位置。,简单的方法是:在进行词法分析的时候,记录下每个词法单位(符号)的行和列。扫描程序碰到非预期的符号时,可以在提示信息中给出该符号的位置。,16,错误处理方法有两种:,错误校正法:,根据文法进行错误改正,错误局部化法:,把错误的影响限制在一个局部的范围,,避免错误扩散和影响程序其他部分的分析,6.5,错误处理,17,错误局部化法,词法分析:,发现不合法字符,显示错误,并跳,过该,标识符(单词),继续往下分析。,语法语义分析:,跳过所在的语法成分(短语或语,句),一般是,跳到语句右界符,,,然后从新语句继续往下分析。,6.5,错误处理,18,6.5,错误处理,错误局部化处理遵循以下两条原则,:,(,1,)镇定原则,(,2,)关键字原则,展开阅读全文

咨信网声明:本文档由用户上传并分享,仅供学习交流、研究之用,未经授权,严禁复制、发行、汇编、翻译或网络传播等,侵权必究。
咨信网小贴示:
1、浏览或下载可查看了解,请点击【咨信网告知】。
2、下载文件中如有侵权或不适当内容,将立即纠正。
3、如果因为网速或其他原因下载失败请重新下载,重复下载[60天内]不扣币。
4、开具发票登录电脑端申请,请点击【索取发票】。
咨信网客服组:【微信客服】
1、浏览或下载可查看了解,请点击【咨信网告知】。
2、下载文件中如有侵权或不适当内容,将立即纠正。
3、如果因为网速或其他原因下载失败请重新下载,重复下载[60天内]不扣币。
4、开具发票登录电脑端申请,请点击【索取发票】。
咨信网客服组:【微信客服】


编译原理总结9-符号表及错误处理.ppt
















自信AI助手














微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/14681930.html