编译原理
文章平均质量分 82
qq_28033719
这个作者很懒,什么都没留下…
展开
-
[编译原理随记]最小化DFA
上级文章:[编译原理随记]正则表达式构建DFA(r(#)followpos(i)构造):https://blog.csdn.net/qq_28033719/article/details/117561604先准备需要进行简化的 DFA 状态图它对应的 DFA 状态转换表 (Dtran) 是:优化状态数然后进行拆分区别:1、先把所有状态放到一组内2、第一次区分是区分接受状态和非接受状态,如果接受状态是一个,那么接收状态为一组,多个就多组,其他归为非接受状态。3、然后第一原创 2021-06-29 17:41:44 · 1336 阅读 · 0 评论 -
[编译原理随记]正则表达式构建DFA(r(#)followpos(i)构造)
上级文章:[编译原理随记]NFA转DFA子集构造算法:https://blog.csdn.net/qq_28033719/article/details/107068996原创 2021-06-04 17:32:14 · 1395 阅读 · 0 评论 -
[编译原理随记]词法分析器(继中序转后缀算术翻译器)
上级文章:[编译原理随记]翻译器(例:中序转后缀加减运算):https://blog.csdn.net/qq_28033719/article/details/106782135准备知识操作符的优先级和结合性:平时计算的时候 * /(乘除)比 + - 优先级高,并且为左结合,所以写产生式的时候是 +- 组合的下级是*/组合,下面产生式没有消除左递归,也没有定义出空串。...原创 2021-05-21 14:31:57 · 220 阅读 · 0 评论 -
[编译原理随记]正则表达式转为NFA状态图(Thompsion构造法)
上级文章[编译原理随记]正则表达式记号和状态图:https://blog.csdn.net/qq_28033719/article/details/107067798[编译原理随记]NFA转DFA子集构造算法:https://blog.csdn.net/qq_28033719/article/details/107068996准备知识语法制导:解析(parse)输入的字符串时,在特定位置执行指定的动作。语法制导算法:其实就本文内容,解析字符串是什么状态(像>=通常弄个状态图原创 2020-07-02 16:41:39 · 7460 阅读 · 1 评论 -
[编译原理随记]NFA转DFA子集构造算法
上级文章[编译原理随记]正则表达式记号和状态图:https://blog.csdn.net/qq_28033719/article/details/107067798准备知识有穷自动机:可以理解为更加一般化的状态转换图,分为确定有穷自动机(DFA),不确定有穷自动机(NFA)。一般化:数学中指普遍性,从已有对象小集合到已有对象大集合过度思想,相似于泛化。不确定有穷自动机(NFA):其实是输入有穷序列时候,输入导致转换的状态不确定。比如说(a|b)*abb,(a|b)*就不原创 2020-07-01 19:17:34 · 2390 阅读 · 0 评论 -
[编译原理随记]正则表达式记号和状态图
正则表达式记号串:通常接触多的名词是字符串,那么串,可以认为是一种数据,类型为任意的,是有穷序列(概念上可以数的完的序列)。语言中句子和字,相当于“符号串”的意思。串的部分:记一个字符串S = apple,有1、S前缀: app为S前缀,是以apple的a开头的连续序列,包括空2、S后缀:le为S后缀,是去掉任意S前缀剩下的序列,包括空3、S子字符串:pp为S子字符串,是去掉任意前缀和后缀得到的序列,包括空4、S子序列:pl为S子序列,只要S包含的相同数量的字符序列就行原创 2020-07-01 17:54:15 · 2404 阅读 · 0 评论 -
[编译原理随记]简单的中序转后缀算术翻译器 ii
上级文章:[编译原理随记]简单的加减算术翻译器:https://blog.csdn.net/qq_28033719/article/details/106782135准备知识操作符的优先级和结合性:平时计算的时候 * /(乘除)比 + - 优先级高,并且为左结合,所以写产生式的时候是先写 +- 后写 */,下面产生式没有消除左递归,也没有定义出空串。左结合:就是运算对象先和左边算术运算符进行计算,比如 a - b + c先将 a - b 左边结合计算,然后再和 + c 进原创 2020-06-24 15:22:49 · 354 阅读 · 0 评论 -
[编译原理随记]翻译器(例:中序转后缀加减运算)
上级链接:[编译原理随记]预测分析法-左递归右递归:https://blog.csdn.net/qq_28033719/article/details/106715673准备知识1、后缀表达式: 也可以称逆波兰表达式,适合计算机处理。 有逆波兰算法题:https://leetcode.com/problems/evaluate-reverse-polish-notation/ 从中值表达式的产生式:expr -> term restrest ->...原创 2020-06-16 10:49:14 · 299 阅读 · 0 评论 -
[编译原理随记]预测分析法-左递归右递归
准备名词:二义性:同一个记号串,能被多种分析树生成,这样的文法叫做二义性的文法。超前扫描符号(lookahead):输入中当前被扫描的符号,就是输入串最左边第一个符号,当完成这个符号扫描之后,串的下一个称为lookahead。非终结符:就是输入串可以继续拆分的符号。终结符:输入串里面不能再拆分的符号。预测分析法:是一种自顶向下的语法分析方法,使用超前扫描符号无二义地确定每个非终结符选择的过程,可以无二义处理非终结符。ε产生式:是一个空串的产生式。左递归-右递归:如果有一个这样原创 2020-06-12 15:18:37 · 4684 阅读 · 0 评论