【编译原理】期末预习做题向I

2024-01-01 22:04

本文主要是介绍【编译原理】期末预习做题向I,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  新的一年希望可以成为更好的人嘿嘿!

 这一篇基本就是把 up 讲的题都截了一遍然后加了点自己的笔记啥的 O.o 

(不妥的话会删掉的 qwq,希望没事嘿嘿)

来源:混子速成

I. 绪论

记住组成部分

II. 前后无关文法和语言

1.字符串长度

集合的+ → 元素和,感觉跟 并 一样

集合的* → 有顺序,A的几次方理解成 幂 就行

自反传递闭包包含正闭包,自传=正+{空},长度不大于x的直接 分情况 计算

2.根据语言产生文法

3.推导和文法树

1)知识点

2)题目

4.二义性文法

5.短语和句柄

这个只截了第一问的,记住定义做就行,感觉很简单

6.文法化简

 没懂,不过我好像不用考这题hhh 

III. 词法分析(这一块跟我学的好像不太一样,直接跳过了)

IV. 语法分析(感觉半懂不懂的。。得多做点题练练)

1.first 集 + follow 集

按要求做就好,主要是记住规则O.o

这种一般不需要列表

2.LL(1)

1)判断

感觉这个做法跟我上课学的不太一样。。等再看看ppt

2)分析表

3.LR(0)

4.判断LR类别

5.判断SLR(1)

6.LR(1)(题有点长懒得截图了O.o,感觉是可以多练就能掌握的类型)

7.证明(好像我不考的也截进来了。。)

1)LL(1)✔ SLR(1)✖

2)LALR(1)✔ SLR(1)✖ + LR(1)✔ LALR(1)✖(完全没懂。。)

V. 翻译和中间代码

1.逆波兰式

2.后缀 → 中缀

3.四元式(布尔表达式好像不考,所以跳过)

4.语法制导的翻译过程好像也不考,所以也跳过O.o


这一篇到这就先结束啦,感觉预习的有点稀里糊涂的,前三个还认真听了一下后边基本就是截图机器或者直接懒得截了O.o,接下来准备先看看理论部分,继续加油吧~

这篇关于【编译原理】期末预习做题向I的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/560637

相关文章

Redis主从复制实现原理分析

《Redis主从复制实现原理分析》Redis主从复制通过Sync和CommandPropagate阶段实现数据同步,2.8版本后引入Psync指令,根据复制偏移量进行全量或部分同步,优化了数据传输效率... 目录Redis主DodMIK从复制实现原理实现原理Psync: 2.8版本后总结Redis主从复制实

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

hdu4407(容斥原理)

题意:给一串数字1,2,......n,两个操作:1、修改第k个数字,2、查询区间[l,r]中与n互质的数之和。 解题思路:咱一看,像线段树,但是如果用线段树做,那么每个区间一定要记录所有的素因子,这样会超内存。然后我就做不来了。后来看了题解,原来是用容斥原理来做的。还记得这道题目吗?求区间[1,r]中与p互质的数的个数,如果不会的话就先去做那题吧。现在这题是求区间[l,r]中与n互质的数的和

maven 编译构建可以执行的jar包

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」👈,「stormsha的知识库」👈持续学习,不断总结,共同进步,为了踏实,做好当下事儿~ 专栏导航 Python系列: Python面试题合集,剑指大厂Git系列: Git操作技巧GO

hdu4407容斥原理

题意: 有一个元素为 1~n 的数列{An},有2种操作(1000次): 1、求某段区间 [a,b] 中与 p 互质的数的和。 2、将数列中某个位置元素的值改变。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.Inpu

hdu4059容斥原理

求1-n中与n互质的数的4次方之和 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.PrintWrit

寻迹模块TCRT5000的应用原理和功能实现(基于STM32)

目录 概述 1 认识TCRT5000 1.1 模块介绍 1.2 电气特性 2 系统应用 2.1 系统架构 2.2 STM32Cube创建工程 3 功能实现 3.1 代码实现 3.2 源代码文件 4 功能测试 4.1 检测黑线状态 4.2 未检测黑线状态 概述 本文主要介绍TCRT5000模块的使用原理,包括该模块的硬件实现方式,电路实现原理,还使用STM32类

TL-Tomcat中长连接的底层源码原理实现

长连接:浏览器告诉tomcat不要将请求关掉。  如果不是长连接,tomcat响应后会告诉浏览器把这个连接关掉。    tomcat中有一个缓冲区  如果发送大批量数据后 又不处理  那么会堆积缓冲区 后面的请求会越来越慢。

Windows环境利用VS2022编译 libvpx 源码教程

libvpx libvpx 是一个开源的视频编码库,由 WebM 项目开发和维护,专门用于 VP8 和 VP9 视频编码格式的编解码处理。它支持高质量的视频压缩,广泛应用于视频会议、在线教育、视频直播服务等多种场景中。libvpx 的特点包括跨平台兼容性、硬件加速支持以及灵活的接口设计,使其可以轻松集成到各种应用程序中。 libvpx 的安装和配置过程相对简单,用户可以从官方网站下载源代码

PHP原理之内存管理中难懂的几个点

PHP的内存管理, 分为俩大部分, 第一部分是PHP自身的内存管理, 这部分主要的内容就是引用计数, 写时复制, 等等面向应用的层面的管理. 而第二部分就是今天我要介绍的, zend_alloc中描写的关于PHP自身的内存管理, 包括它是如何管理可用内存, 如何分配内存等. 另外, 为什么要写这个呢, 因为之前并没有任何资料来介绍PHP内存管理中使用的策略, 数据结构, 或者算法. 而在我们