分享好友 最新动态首页 最新动态分类 切换频道
C语言中的O型文件是什么,编译原理期末题型
2024-12-26 22:23

简单

C语言中的O型文件是什么,编译原理期末题型

1.Chomsky把文法分为几种类型?什么是文法的二义性

1)分成四种类型,即0型、1型、2型和3型。(1)0型文法:设G=(VN,VT,P,S),如果它的每个产生式α→β是这样一种结构:α∈(VN∪VT)且至少含有一个非终结符,而

β∈(VN∪VT),则G是一个0型文法。(2)1型文法:若P中的每一个产生式α→β均满足|β|>=|α|,仅仅S->ε除外,则文法G是1型。(3)若P中的每一个产生式α→β满足:α是非终结符,β∈(VN∪VT),则此文法称为2型的。(4)若P中的每一个产生式的形式都是A→aB或A→a,其中A和B都是非终结符,a∈VT,则G是3型文法。

2)如果文法G中的某个句子存在不只一棵语法树,则称该句子是二义性的。如果文法含有二义性的句子,则称该文法是二义性的

2. 简述DFA与NFA的区别:DFA每次输入只对应一个结果,而NFA的依次输入可能对应多个结果,形成一个结果集。

3.什么是算符文法?并举例说明

设有文法G,如果G中没有形如A->…BC…的产生式,其中B,C为非终结符,则称G为算符文法。

例如:对于表达式的二义性文法E->E|E-E|E*E|E/E|E↑E|(E)|i

其中任何一个产生式中都不包含两个非终结符相邻的情况,因此该文法为算符文法。

4.什么是3型文法?什么是文法的语言

(1)若P中的每一个产生式的形式都是A→aB或A→a,其中A和B都是非终结符,a∈VT*,则G是3型文法。

(2)文法的语言:文法是用于描述语言的语法结构的形式规则。文法描述的语言是该文法一切句子的集合。一个文法所描述的语言是唯一的。

5. 什么是文法的二义性?给出一个二义性文法实例

(1)如果文法G中的某个句子存在不只一棵语法树,则称该句子是二义性的。如果文法含有二义性的句子,则称该文法是二义性的

书上:若一个文法中存在某个句子,有两个不同的最左(最右)推导,则该文法是二义的。 (2)文法G=({E},{+, * , i , (,)

}, P, E),其中P为:E->i ; E->E+E ; E->EE ; E->(E) ;

这里的非终结符E表示一类算术表达式,i表示程序设计语言中的变量。该文法定义了由变量+,(和)组成的算术表达式的语法结构。

6.常见的代码优化技术有哪些?依据优化所涉及的范围分为那些级别

删除多余运算、代码外提、强度削弱、变换控制条件、合并已知量和复写传播、删除无用赋值。局部优化、循环优化、全局优化

7.用实例说明简单栈式存储分配的过程

对于没有分程序结构,过程定义不允许嵌套但允许过程递归调用的语言,我们可以采用一:种简单的栈式存储分配策略。其分配策略是将整个程序的数据空间设计为一个栈,每当调用一个过程时就将其活动记录压入栈,在栈顶形成该过程工作时的数据区,而当过程结束时再将其活动记录弹出栈。

递归调用的例子(C语言)

void q(int n){

p(n);

}

void p(int m){

if (m> 1){

q(m-1);

p(m-1);}

}

main( ){ int x=2;

p(x);

}

调用main,main的活动记录入栈,main中调用p函数,p的活动记录P1入栈,m>1,p调用q,q的活动记录入栈,q中调用p,p活动记录P2入栈,P2执行完毕,P2出栈,q执行完毕,q的活动记录出栈,此时运行到P1的活动记录,p又调用本身p函数,p的活动记录P3入栈,P3执行完毕出栈,P1执行完出栈,main执行完毕,main活动记录出栈。

8.简述符号表的总体组织方法。

第一种:把属性种类完全相同的那些符号组织在一起,构造出表项是分别为等长的多个符号表。这样组织的最大优点是每个符号表的属性个数和结构完全相同。

第二种:把所有语言中的符号都组织在一张符号表中。组成一张包括了所有属性的庞大的符号表。这样组织方式的最大优点是总体管理非常集中单一,且不同种类符号的共同属性可一致地管理和处理。

第三种:折衷方式是根据符号属性相似程度分类组织成若干张表,每张表中记录的符号都有比较多的相同属性。这种折衷的组织方式在管理复杂性及时空效率方面都取得折衷的效果,并且对复杂性和效率的取舍可由设计者根据自己的经验和要求及目标系统的客观环境和需求进行选择和调整。

计算题

.构造一个文法,使其描述的语言L(G)是{ 0n1n|n≥1}。

G[S]:G: S→0S1, S→01

二、已知文法G[A]

A → aABl | a

B → Bb | d

给出与G[A]等价的LL(1)文法并构造该文法的预测分析表。

:把文法变为G’[A]

此时

由于

所以,G’[A]即为所求等价的LL(1)文法。构造的预测分析表为

占位符而已

a

b

l

d

#

.试构造与正规式R = (a|b)*b等价的状态最少的DFA。

.已知文法G[S]:S→a||(T)

T→T,S|S

对文法消除左递归,然后判断是不是LL(1)文法?若是,构造该文法预测分析表。

最新文章
谷歌安卓 16 酝酿新 API:无需手动切换,智能开启夜间拍摄模式
IT之家 12 月 18 日消息,谷歌今天(12 月 18 日)发布支持文档,计划为安卓 16 系统是引入全新的“夜间模式指示器 API”(Night Mode Indicator API),让相机和社交应用智能识别低光环境,优化拍摄效果。该 API 能够自动识别环境光线条件
百度蜘蛛池引流:揭秘黑帽SEO课程,蜘蛛池背后的秘密与风险
本文揭示了黑帽SEO课程中蜘蛛池引流的技术与风险。通过构建庞大的蜘蛛池,非法手段获取网站流量,严重破坏互联网生态。本文深入剖析了蜘蛛池的运作原理、危害及防范措施,提醒广大网站运营者警惕黑帽SEO的陷阱。本文目录导读:黑帽SEO课程
阿里巴巴分销和淘货源区别是什么?淘货源分销模式是啥?
在阿里旗下有非常多的电商平台,比如常见的有天猫淘宝等,另外还有一些专注于供货的电商平台,比如阿里巴巴分销和淘货源等,两者看起来是差不多的,但是实际上是有区别的,下面说说区别在哪里吧。阿里巴巴分销和淘货源区别是什么?分销商(淘
谷歌推广怎么做?如何做好谷歌推广?看完这一篇就够了!
在跨境电商中,谷歌推广是获取流量和增加销售的重要手段,无论是谷歌SEO优化还是谷歌广告都是打造品牌和推动业务增长的有效途径,那么谷歌推广究竟该怎么做呢?接下来跟着Ueeshop一起来看一看吧~谷歌SEO谷歌SEO旨在通过优化网站,使其在谷
网站SEO详细操作引导(SEO优化图文教程)
你不知道你最近做SEO的时候是否也有这个想法?SEO现在应该做什么?应该怎么做?我认为SEO的新手应该有这样的想法,但他们已经习惯了那些在战场上待了很长时间的老鸟。他们已经学会了适应百度,并随着百度而改变。网站SEO详细操作引导(SEO
小众软件,Chatppt-一键生成PPT!
​​ChatPPT(www.chat-ppt.com)是一款基于语言模型驱动智能生成与辅助创作PPT演示文稿的产品(AI生成PPT),其基于必优科技“自研Wernicke+LLM”双模型驱动,打造国内首个基于AI大模型进行Office全文档级生成的服务,旨在面向职场办公朋
抖音地图定位怎么设置自己家店铺?没有自己店铺的位置怎么办?
抖音作为一款流行的短视频应用,不仅为用户提供了一个展示自我、分享生活的平台,也为商家提供了宣传和引流的好机会。通过在抖音上设置店铺的地图定位,商家可以让顾客更方便地找到自己的店铺。那么,如何在抖音上设置自己家店铺的地图定位
长城汽车哈弗H5不了解下 不足14.78万
如今年轻人已经走在了时代洪流的前端,同时也是社会的消费主力军,除了性价比,还看这款车好不好看、性能强不强等。现在消费者买车越来越看重空间,在空间表现上值得一说。接下来就和小编一起看看它的亮点能否吸引你吧。先看下哈弗H5的外观
十大公认的不氪金仙侠手游,十大平民耐玩的仙侠手游排行榜
大家好!随着手游市场的日益繁荣,许多优秀的仙侠题材游戏应运而生。然而,玩家们总是在寻找那些既具有耐玩性又不需要花费大量金钱的手游。为了方便广大平民玩家,这里小豹向您推荐十款公认的不氪金且耐玩的仙大家身边也很少看见内测号玩家
百度竞价托管服务,为您的网站带来更多曝光与流量
本文将详细介绍百度竞价托管服务,如何为您的网站带来更多曝光与流量。首先从竞价托管的定义和概念入手,接着分析竞价托管的优势和特点。然后解析如何通过竞价托管服务提升网站的曝光度和流量,以及如何投放广告提升转化率。之后归纳竞价托
相关文章
推荐文章
发表评论
0评