【编译原理】期末预习PPT后三章笔记+LL(1) II

news2024/10/3 8:23:07

 继续预习O.o

 从这一章开始看自己班发的 PPT 了 

 LL(1)的部分因为班里发了所以又看了一遍hhh感觉比之前那个清楚一点 

目录

I. 自顶向下

一、概念(看一眼)

1、语法分析的两大类分析方法

2、算法基本思想

 3、自顶向下介绍

1)一般过程

2)主要问题 回溯(分类是 确定的、不确定的 → 回溯)

① 定义及影响

② 消除回溯

✿ 提取左因子

✿ 消除左递归(直接间接)

✿✿ 直接

✿✿ 间接(了解)

二、LL(1)

1、定义

1)first 集

2)follow 集

✿ 例题

3)判断条件

4)非LL(1)转LL(1)

2、分析表

3、优缺点

三、递归下降(看一眼)

II. 自底向上

一、概念(看一眼)

1、短语和直接短语(可以不唯一)

2、句柄(唯一)

二、LR(0)

1、概念

2、优缺点

3、分析器

✿ 分析表 * 2

4、算法描述

5、工作过程

1)定义

2)活前缀与句柄

① 定义(没看明白O.o)

② 构造识别活前缀的 dfa (直接构造)

 6、判断条件

7、分析表(建议直接做题O.o)

8、问题

三、SLR(1)(升级版LR(0))

1、概念

2、分析表(建议直接做题O.o) 

3、问题

III. 符号表(记住基本概念多做题O.o)

IV. 中间代码及语法制导(也是多做题)

一、概念

✿ 逆波兰式

二、三元式(不知道考不考)

三、四元式(要考)

四、回填翻译(一般从100开始写起,做几个题懂了)


I. 自顶向下

一、概念(看一眼)

1、语法分析的两大类分析方法

2、算法基本思想

 3、自顶向下介绍

1)一般过程

2)主要问题 回溯(分类是 确定的、不确定的 → 回溯)
① 定义及影响

② 消除回溯
✿ 提取左因子

✿ 消除左递归(直接间接)
✿✿ 直接

因为E推T+T或T-T或T,所以可以改成TE’,但是不知道为什么没写-的情况

✿✿ 间接(了解)

二、LL(1)

1、定义

1)first 集

2)follow 集

✿ 例题

感觉不难但需要做题熟悉一下O.o 

3)判断条件

感觉有点繁琐,记得 不含左递归+同一左部产生式的select无交集 就行,之前的笔记里有select的详细求法,简单来说就是,如 A → B,先 看B的first有没有空 

有 → select(A→B) = 去掉空的first(B) + follow(A)

无 → select(A→B) = first(B)

4)非LL(1)转LL(1)

2、分析表

跟连连看差不多(?),拿E'这一行举例,+是因为E'的first有+, )列是因为E'的follow有空,

                                                                    不填的是因为first和follow都没有

但是我感觉 E' 最后两列应该填 E'→空 来着O.o,等看书的时候看看这一块

3、优缺点

三、递归下降(看一眼)

II. 自底向上

因为期末只考LR(0)和SLR(1)所以只看了这两个O.o

一、概念(看一眼)

1、短语和直接短语(可以不唯一)

2、句柄(唯一)

终结符,小写字母或符号之类的

二、LR(0)

1、概念

2、优缺点

3、分析器

逻辑结构:分析表、分析栈、总控程序

✿ 分析表 * 2

4、算法描述

5、工作过程

1)定义

2)活前缀与句柄
① 定义(没看明白O.o)

② 构造识别活前缀的 dfa (直接构造)

建议直接做题

 6、判断条件

7、分析表(建议直接做题O.o)

移近s规约r

8、问题

三、SLR(1)(升级版LR(0))

1、概念

2、分析表(建议直接做题O.o) 

3、问题

III. 符号表(记住基本概念多做题O.o)

IV. 中间代码及语法制导(也是多做题)

我只考中间代码O.o

一、概念

✿ 逆波兰式

可能出大题,多做几个中缀转后缀的题就行,数据结构学过O.o

二、三元式(不知道考不考)

三、四元式(要考)

主要运算顺序就行,优先括号

四、回填翻译(一般从100开始写起,做几个题懂了)

因为例题在书上就略过了O.o


ppt终于全看完了!好耶!明天得开始看课本做习题了O.o

祝大家的期末都高分过~

加油加油!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1362037.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IPv6和IPv4在技术层面的区别

随着互联网的不断发展,IPv4地址资源已经逐渐枯竭,而IPv6地址的使用逐渐成为趋势。IPv6和IPv4作为互联网协议的两个版本,在技术层面存在许多区别。本文将从地址空间、地址表示方法、路由协议、安全性、移动性以及网络性能等方面对IPv6和IPv4进…

【计算机网络】TCP原理 | 可靠性机制分析(一)

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【网络编程】【Java系列】 本专栏旨在分享学习网络编程、计算机网络的一点学习心得,欢迎大家在评论区交流讨论💌 目…

探索生成式AI:自动化、问题解决与创新力

目录 自动化和效率:生成式AI的颠覆力量 解谜大师生成式AI:如何理解和解决问题 创新与创造力的启迪:生成式AI的无限潜能 自动化和效率:生成式AI的颠覆力量 1. 神奇的代码生成器:生成式AI可以帮助开发人员像魔术一样快…

Linux network — 网络层收发包流程及 Netfilter 框架浅析

Linux network — 网络层收发包流程及 Netfilter 框架浅析 1. 前言2. 基础网络知识2.1 网络分层模型2.2 数据包协议分层2.3 sk_buff 结构2.4 收发包整体框架 3. 网络层(IPv4)收发包流程4. Netfilter 框架4.1 IPv4 网络层的 Netfilter Hook 点4.2 iptable…

jquery图形验证码

效果展示 js图形随机验证码&#xff08;表单验证&#xff09; html代码片段 <form class"formwrap"><div class"item"><input type"text" id"code_input" value"" placeholder"请输入验证码"/>…

【KD】知识蒸馏(knowledge distillation)简单介绍

最近学到了知识蒸馏的相关知识&#xff0c;来简单总结一下૮꒰ ˶• ༝ •˶꒱ა。 知识蒸馏 知识蒸馏&#xff0c;是一种模型压缩的手段。通过训练学生模仿教师的行为&#xff0c;将嵌入在大的教师模型中的知识迁移到小的学生模型。 例如&#xff0c;TinyBERT(Jiao et al.,2…

第14课 利用openCV快速数豆豆

除了检测运动&#xff0c;openCV还能做许多有趣且实用的事情。其实openCV和FFmpeg一样都是宝藏开源项目&#xff0c;貌似简单的几行代码功能实现背后其实是复杂的算法在支撑。有志于深入学习的同学可以在入门后进一步研究算法的实现&#xff0c;一定会受益匪浅。 这节课&#…

sensor 点亮出图后,画面全黑是为什么?

同事在点一个思特威的 sensor sc035hgs&#xff0c;这个 sensor 主要负责数据采集&#xff0c;然后给到后面的 NN&#xff08;神经网络&#xff09;去做处理。 点亮出图后&#xff0c;画面很黑&#xff0c;如下图所示&#xff1a; 因为没拿到板子&#xff0c;只能盲猜&#xf…

案例097:基于微信小程序+PHP的家具购物商城系统

目录 前言 系统展示 管理员模块的实现 用户管理 家具分类管理 家具新品管理 家具广告管理 小程序用户模块的实现 首页 家具信息 我的 代码实现 登录功能实现代码 注册功能实现代码 密码重置功能实现代码 修改信息功能实现代码 删除信息功能实现代码 保存信息…

H266/VVC多样化视频编码工具概述

全景视频编码 全景视频&#xff1a; 具有360度全包围视角的球面视频。 全景视频编码&#xff1a; 包括H266在内的视频编码算法都是以平面视频为对象的&#xff0c;为了采用传统的视频编码编码算法&#xff0c;全景视频需要转换为平面视频&#xff0c;其中经纬图等角映射&#…

深度学习|4.1 深L层神经网络 4.2 深层网络的正向传播

4.1 深L层神经网络 对于某些问题来说&#xff0c;深层神经网络相对于浅层神经网络解决该问题的效果会较好。所以问题就变成了神经网络层数的设置。 其中 n [ i ] n^{[i]} n[i]表示第i层神经节点的个数&#xff0c; w [ l ] w^{[l]} w[l]代表计算第l层所采用的权重系数&#xff…

记一次实战云渗透总结

点击星标&#xff0c;即时接收最新推文 云渗透思路 所谓的云渗透通常指SaaS或PaaS渗透&#xff0c;即将服务器端的某些服务搭建在云服务器上&#xff0c;源代码的开发、升级、维护等工作都由提供方进行。从原理上看&#xff0c;云渗透思路与传统渗透思路相差无几。站点必须由底…

Python中的cls语法

在Python中&#xff0c;cls 是一个用于指代类本身的约定性名称&#xff0c;通常用作类方法&#xff08;class method&#xff09;中的第一个参数。cls 类似于 self&#xff0c;它是对类的引用&#xff0c;而不是对实例的引用。cls 通常在类方法中用于访问类级别的属性和方法。举…

Kafka消息阻塞:拯救面试的八大终极解决方案!

大家好&#xff0c;我是小米&#xff0c;一个对技术充满热情的90后程序员。最近在准备社招面试的过程中&#xff0c;遇到了一个超级有挑战性的问题&#xff1a;“Kafka消息阻塞怎么解决&#xff1f;”今天&#xff0c;我就来和大家一起深入剖析这个问题&#xff0c;分享我在解决…

1-02VS的安装与测试

一、概述 对于一名C语言程序员而言&#xff0c;进行C语言程序的开发一般需要一个文本编辑器加上一个编译器就足够了。但为了方便起见&#xff0c;我们选择使用集成开发环境——Visual Studio&#xff08;简称VS&#xff09;。安装Visual Studio 下面讲一下如何安装VS&#xff0…

找不到mfc110u.dll,是什么原因,五种找不到mfc110u.dll,的解决方法

在日常使用电脑的过程中&#xff0c;我们可能会遇到一些错误提示&#xff0c;其中之一就是“mfc110u.dll丢失”。那么&#xff0c;什么是mfc110u.dll文件&#xff1f;为什么会出现丢失的情况&#xff1f;本文将为您详细介绍mfc110u.dll文件的作用、丢失原因以及提供5种解决方法…

概率论基础知识补充

概率论基础知识 样本概率&#xff1a;P(x)表示样本x出现的概率&#xff0c;也就是在全体样本中出现的概率先验概率&#xff1a;对于多类问题&#xff0c;类别状态 ω i \omega_i ωi​出现的概率, P ( ω i ) P{\left(\omega_i\right)} P(ωi​)条件概率&#xff1a;在类别 ω…

关于图像分类任务中划分数据集,并且生成分类类别的josn字典文件

1. 前言 在做图像分类任务的时候&#xff0c;数据格式是文件夹格式&#xff0c;相同文件夹下存放同一类型的类别 不少网上的数据&#xff0c;没有划分数据集&#xff0c;虽然代码简单&#xff0c;每次重新编写还是颇为麻烦&#xff0c;这里记录一下 如下&#xff0c;有的数据…

win10关闭打开文件安全警告

1.使用场景 在流水线上&#xff0c;因车间刷软件的程序不能下发到每一台电脑上&#xff0c;会使用共享文件夹的形式来共享程序。每次打开会弹出一下窗口&#xff0c;影响员工生产。 需要将安全警告关闭。2.解决步骤 1.winR键打开运行窗口&#xff0c;输入gpedit.msc&#xff…

vue3 的内置组件汇总

官方给出的说明&#xff1a; Fragment: Vue 3 组件不再要求有一个唯一的根节点&#xff0c;清除了很多无用的占位 div。Teleport: 允许组件渲染在别的元素内&#xff0c;主要开发弹窗组件的时候特别有用。Suspense: 异步组件&#xff0c;更方便开发有异步请求的组件。 一、fr…