分享
分销 收藏 举报 申诉 / 18

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

  • 上传人:快乐****生活
  • 文档编号:14681930
  • 上传时间:2026-10-29
  • 格式:PPT
  • 页数:18
  • 大小:297.52KB
  • 下载积分:10 金币
  • 配套讲稿:

    如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,)关键字原则,
    展开阅读全文

    开通VIP折扣优惠下载文档

    提示  咨信网声明:本文档由用户上传并分享,仅供学习交流、研究之用,未经授权,严禁复制、发行、汇编、翻译或网络传播等,侵权必究。

    咨信网小贴示:
    1、浏览或下载可查看了解,请点击【咨信网告知】。
    2、下载文件中如有侵权或不适当内容,将立即纠正。
    3、如果因为网速或其他原因下载失败请重新下载,重复下载[60天内]不扣币。
    4、开具发票登录电脑端申请,请点击【索取发票】。

    咨信网客服组:【微信客服】

    自信AI创作助手
    关于本文
    本文标题:编译原理总结9-符号表及错误处理.ppt
    链接地址:https://www.zixin.com.cn/doc/14681930.html

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork