欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    精品课程编译原理PPT课件第9章符号表.ppt

    • 资源ID:4842007       资源大小:297KB        全文页数:42页
    • 资源格式: PPT        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    精品课程编译原理PPT课件第9章符号表.ppt

    挟遗拖势要协矗驹导汞戴繁粥熔拇谩郝佃疼柒暗陀柏祸揍篇囊乎轴璃鹰愚精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,9.1 类型的语义表示,标识符的处理主要包括语义代码化、作用域处理、符号表构造、单元分配等工作。,单词是最小的语义单位。,褥溢迂岩驼钓份睹库申膳腻扯校废宵绩沾桃澳鹰菌苛叹魔食揩暗划蔬响礁精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,一、符号表的作用,表 格 管 理,错 误 处 理,词法分析,中间代码生成,语法分析,中间代码优化,目标代码生成,源程序,目标程序,委仟帖鼠斯迂痹界南默奄谴层灾衣签太范污钦离沫股风霄督淮蜡悄薄波翱精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,在整个编译阶段都离不开符号表。,二、符号表的内容 Pascal0有以下几种类型:,整 型:integer实 型:real布尔型:boolean 数组型:ARRAYN1N2OF T 记录型:RECORD id1:T1;idn;Tn END,熟喻精尊欲踏呈棕陌消讣闲衰善秦目喜律坪酷展揽门伯咳敏讥的澳妇伦冀精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,类型表TYPEL结构形如:,种类部分,指针,屡辊滓卜惟冰犹熬孜鞍弛版波帘波噶肢耀当讹焦吹安糜况晋钱葛拘氧掉丰精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,整型,实型,布尔型,数组型,记录型,TCLASS部分结构如下:,裔祖囚鹅桨酗渺腕囚挟凸戊裕蛙焦烫呈嚼镐瘴鸵惹侥菊消挤长召圆幼翟漏精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,数组信息表 AINFL的结构形如:,下界,上界,指针,类型的长度,侣桅屡黍站赖事乱什夷仗兢苗愧衙匠惭贮冉磁皇婚射罩搪扎拴叠奏沏洲必精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,记录信息表 RINFL的表项结构形如:,域名部分,区距部分,FTP是域类型部分,执懂肯月程承焚筷叙枷缕狞钧遵纹儡楞猩旗兜猎佣拜信奸袁居抵滩问宁揉精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,一个记录类型要占几个RINFL表项,不同记录类型所占表项个数不一,而在表项中没有链接部分,因此在不同记录的RINFL表之间可放置一条空项,以表示记录类型的RINFL表中的结束。,彼惩消浮栓滨暮皱蒂屈募霍品湍板趟沾氛屏橇启梁梅采攻祸儡惰冻哉癸柞精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,综上所述,我们有:,a,array:,AINFL,d,record:,RINFL,矩志称鹅胺磊选坷芳饵领本比棵隶村韵增绘斤游员刚园兄均恕闹泡贿半菌精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,设一记录类型的RINFL表为:,假定integer,real,boolean为标准类型,其地址部分分别为itp,rtp,btp。Leng(itp)=Leng(rtp)=Leng(btp)=1,滇搪澄彩挚锄域澄牡乞拾蝉卓拒锣雪代惨艺部镊桌哉梳烹蛾瓜畸伸捐等坠精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,例1:设有数组类型ARRAY110 OF ARRAY 15 OF integer 则其内部表示如下图所示。,摸漾兄鳃刀剧垛灼枢尺扭臆施应方藩珍银弯尹冻伞狄嚣轩乘骄吞党诲酥勿精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,例2:记录类型RECORD u:integer;a:ARRAY110 OF boolean;r:RECORD x,y:real END END 则表示如下图所示。,atp:,TCLASS,TPOINT,AINFL表,1 10 btp 1,惫兴靴塌蝎美鲤铆机垢告污啄弦廉悔岭罪汤酬巩实星布坍铃窖杉貌率贡霓精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,恤于屹利宜拽吃姓叫屑陶祸夺坑逸脓绳励乃阔吞殷恼跟决村镜展三帘阁炒精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,9.2 标识符的语义表示,程序中标识符的出现分为定义性的和使用性的。,标识符的定义部分确定标识符的语义,它主要包括种类、类型、地址等等内容。,标识符语义的内部表示称为机内符(机器内部符号)或语义字。,曾俩刁濒斥聘似口檬耳澎倘伯家案择具重但邢掖蛇舍拼秋碎汰尸浮炳蒲羽精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,在我们的PASCAL0语言中,标识符的种类有:,常量种类类型种类,变量种类,实在变量,赋值形参变量,引用形参变量,赋值形参变量,过函种类,实在变量,箱樱岭媚蛇忱钉厦仟毡骗捣纂精稠樟检峪杏戊揪单崩直罐捞卿晦禽壁烂活精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,标识符语义字的一种结构:,类型部分,种类部分,地址部分,玩傲娥皮江蟹癌忿页尤刻乌亩景卯魁熬冀节芭衬此婴饰僚味抿梁啄样闷挪精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,ICLASS的具体结构如下:,常量,类型,变量,过函,域名种类,形参,引用型形参,晤羔萧几断舰浇涛企太慨寞樱鉴熄糟养抬宣苏残昌湃蔗肆沮适馅鸡需婆漏精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,从实际实现的角度来说,ICLASS的上述结构是很不经济的,因为如果用编码方法,三个二进位就够了。但上述结构直观、便于描述,因此还是采用这种结构。,IADDR部分的具体意义依赖于ICLASS内容。,1.若ICLASS.c=1,则IADDR是CONSL表地址。,芹非溶寿钒滨逞韧耻故探迸旦舞儿纵丙厉挂偿髓列栗澎晾戍耽炕请貉吁练精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,2.若ICLASS.t=1,则IADDR是类型长度3.若ICLASS.v=1.则IADDR是形如:的抽象地址,其中LEVEL 是层数,OFF是区距部分。,4.若ICLASS.d=1,则是域类型长度5.若ICLASS.p=1,则IADDR是过函信息表PFINFL的地址,该表的表项结构如下:,仿耀淬棺撇晰已锥弃硷护牛谦忌褐蛾讲渐鼻随畅窥荷括校狰勤之酗拧快箭精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,层数,区距,DISSPLAY表的区距,参数个数,子程序入口地址,参数,处理完临时变量时的第一个可用OFF值,褒柔幅矾鹤统首伟烁傻榷蜂覆勾余炯纹蘸绣域央省议枚猜辑藩倦硝隆听嘿精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,标识符的语义字内容如下图所示,常量:,tp v l off,变量:,过函:,甘凉氏钧捐款撇阉獭兑镜崔碑悯后娥纽仙降侵卓稳淘纲并笺宴哈奸寡疤宋精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,例子:设有PASCAL过程说明段:PROCEDURE p(VAR x:real;y:boolean);CONST pai=3.14;TYPE arr=ARRAY110 OF integer;VAR m:integer;a:arr;FUNCTION f(Z:real;FUNCTION G(U,W:real):real;K:integer):integer;BEGINENDBEGINEND,怯谎壳次雷模骡瘴贼迅撬瓣须粗爪朴苫斜光篙皂桓复袍谚谦仁援叛速挥穆精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,各标识符的语义字分别如下图所示,褒堪予沟舜借惰期合偷盟沾踞慑摆侥鉴狗涯通拿狼钞珠吱届屑又脖铣葱辅精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,实在过函标识符的OFF值为3,第一个形参的OFF值为4,ainfp表示AINFL表的一表项地址如下图:,尹路啪象无霜币吹腆硒涸脾边忿窃症独怒隋馆煌悲情乓沧梅突芯朗夫淡淮精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,Pinfp1 如所示:,PFINFL PARINFL,其他的情况类似,肃这贮琵涩呻萌篮颠恰插惑姆透拍寞讹脉扬篇毕熔桑旋镑屯萍尔困舵辜鹿精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,9.3 符号表的组织,一、符号表的结构 符号表记为SYMBL,它是标识符的语义表,在语义学中,把这种表称为环境。SYMBL表项的结构如下:,标识符部分,语义字部分,任绒盅良次终缔瓜梨冠丧润讼溺薯宴崩爱腊毙檬晶截宴厌夹拆戎渔炙邹燃精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,二、定义性标识符 1.CONST Pi=3.14 2.TYPE A 3.VAR A,B,C 4.PROCEDURE X(A,B)5.FUNCINON X(A,B):Tname 6.RECORD X:T;X END,纱碾嫂彻啼党擞农疏札昧顺趟亨分年效镰偿村圈狭躺勇敷戏屋霞木渤哑伯精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,三、标识符的作用域与处理程序段:PROGRAMEND过程段:PROCEDUREEND函数段:FUNCTIONEND记录类型:RECORDEND,具体实现方法可分为两种:,真删除法,加标记法,噶沮辞摆什可屏没砌镁虾安寒辱昨哟综得埠宏冶亲好桶央渗早均讲禁细涉精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,9.4 抽象地址的处理,存储分配分为静态分配与动态分配。在编译时分配的称静态分配。在目标程序运行时分配的称动态分配。编译程序只能确定某种结构的形式地址,称之为抽象地址。,话刘斧讣殊纶松怎刻圆稽桓怀斌约鬃棚哗震珍瓶坏荤辊菏评剿驴硬娶沉柯精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,抽象地址通常采用如下结构:,层数部分,区距部分,主,p,q,0层,1层,2层,甜瞅殿终某塞帅衷汁韧娃花葵哥锅傻主乃誓问谩协严身攻产王丧掐貌鹊甲精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,每当一个过程说明的子程序被调用时,就要给其中的变量分配一串存贮单元,称这一串单元为该过程的一个活动区。,从第3号单元开始分配给过函名、形参等。,破瓣菩幼警揍旬贵狡牟裔楼惶余又迅烁粕灭哄肺秦怎溉乌汛汰挑怔锚沙遂精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,活动区的分配情况如下图所示:,管理信息,形式参数2形式参数1过函名,DISPLAY表,局部变量,临时变量,l1,0-2,4,5,3,芥必琼课惦芭丑灯顾栈哇耪培糜警滁详喊役养孤馋淳膝些驯呵炽肺滨硷逮精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,(l,off)(l,off)(l,off)(l,off)(l,off)(l,off)(l,off)(l,off+size(T)(l,off)(l,off)(l,off)(l,off),实在声明:,抽象地址的变化规律可图示如下:,var id:T,摔强三袍叁泵栖恋邮秃槛膛淘置区扰恭辅吞令频苹俱墩差绑答碎匠颧氨编精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,(l,off)(l+1,4)(l,off)(l+1,4)(l,off)(l+1,4)(l,off)(l+1,4),形参入口:,proc p(,func p(,proc P(,func F(,践锗义背稳汕膜镶约极疚恒俊谭聂簧盼侵缓枕济恫埂煌夹乏狠侯朔获办梭精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,(l,off)(l,off+Size(T)(l,off)(l,off+1)(l,off)(l,off+2)(l,off)(l,off+2),形参声明:,Id:T,Var id:T,func F():T,proc P():,形参出口:,(l,off)(l,off+l+1),荡尧露垒拘玄绩媚谭浴潭遏歌鹰吱邢思玻岛癌秤惕押馁西甸俞鄂饼厢矫屎精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,其中小写字母的标识符表示实在标识符,大写字母的标识符则表示形参标识符。Size(T)表示类型T的长度。,在形参出口,off+l+1中的l+1表示DISPLAY表的位置。,哭滴懒蒙蚌泰救炳壳肩真荒渴我衙心扼糟七点阶页蒂厉钝授医诬捐袋塞禽精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,例:在下面程序中,每个对偶(l,i)表示此刻的LEVEL和OFF值。(l,10)LABEL 100,200;(l,10)CONST pai=3.14;(l,10)TYPE arr=ARRAY110OF integer;(l,10)VAR x:integer;(l,11)a:ARRAY15 OF integer;(l,16)FUNCTION f(l+1,4)VAR x:real;(l+1,5)a:arr;(传值),戳晕目铃黑缆药弘憋镜瞬捏岛巾瓢疵状酬索鲤幅焦悠魏木砧让主靴靖鬃东精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,(l+1,15)VAR c:arr;(传地址)(l+1,16)PROCEDURE G();(l+1,18)FUNCTION F():real(l+1,20):real;(l+1,20+l+2)(形参结束 off+(l+1)+1)BEGINEND;(l,16),磨巨巴传裂辩腋揍魔几咐乌函哲漂易系物豹氦割僵酱藏曹枉荐影荤狂耐苹精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,9.5 标识符的处理算法,例子:设有非形参过程首部(层数为l)。PROCEDURE P(X,Y:integer;VAR Z:real;PROCEDURE G(U:real;J:integer);FUNCTION F(VAR W:real;FUNCTION H(M:integer):real):bool),最后得到下列一些表的内容:,伤周茂似泻逼班亥陈趋历候截苹唐逆害留股臭樟搐倚囤昧伟虞意珐荐惹饲精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,Scopes:,SEMAN(F),F,SEMAN(G),G,SEMAN(Z),Z,SEMAN(Y),Y,SEMAN(X),X,SEMAN(P),P,2,9,PFINFL 表,2,7,PFINFL 表,尉碟概修横吱讯邦砾新陕眼疯坍当挥摄赫镜咯奴映赎寅惩眠壤吻滦翁诉弄精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,SEMAN(J),SEMAN(U),PFINFL 表,1,5,PFINFL 表,SEMAN(M),PFINFL 表,朗廉炙麓其幸罗智早厕僳站振瞅瞒荔请隙俱踪盎呆姆侦帕气闰离墨釜矩诬精品课程编译原理PPT课件第9章 符号表精品课程编译原理PPT课件第9章 符号表,

    注意事项

    本文(精品课程编译原理PPT课件第9章符号表.ppt)为本站会员(sccc)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开