上面就是一个标准的预测分析表 左面一列是非终结符,上面一行是输入符号 然后把非终结符遇到的对应的符号,所使用的的文法写在中间 ...
分类:
其他好文 时间:
2020-06-27 11:50:37
阅读次数:
62
清晰记得本次实验在推了两次项目集规范簇之后,发现文档中给出的文法有错误,联系老师得到改正后,遂顺利完成。简单记录一下本次实验的经历,留作以后备用,若有错误之处,还请路过的博友不吝赐教。 实验设计目标 构造LR(1)分析程序,利用它进行语法分析,判断给出的符号串是否为该文法识别的句子。 实验原理 整体 ...
分类:
其他好文 时间:
2020-06-27 11:46:13
阅读次数:
78
MySQL01:初识MySQL 基于MySQL5.7.19版本 暴风雨的礼物·MySQL 如果你只会写代码的是码农;要学好数据库,才能基本能混口饭吃;在此基础上如果再学好操作系统和计算机网络,就能当一个不错的程序员。如果能再把离散数学、数字电路、体系结构、数据结构/算法、编译原理学通透,再加上丰富的 ...
分类:
数据库 时间:
2020-06-26 20:35:42
阅读次数:
74
作用域是什么? 总结:作用域是为了存储变量,并且之后可以方便的找到这些变量而设计的规则,也可以说它是根据名称查找变量的一套规则 编译原理: 分词/词法分析(Tokenizing/Lexing)-> 解析/语法分析(Parsing)-> 代码生成 LHS 和RHS: 总结:如果查找的目的是对变量进行赋 ...
分类:
其他好文 时间:
2020-06-21 12:05:55
阅读次数:
60
在编译原理的实验时,用到了大量的C++的字符串相关知识,很多基础知识已经模糊。在写一处string赋值时,一直出现错误 问题是假如有一个字符串,定义string A="",要逐个字符给A赋值开始的我是这样的写的 string A; for(int i;i<n;i++) { A[i]=a[i]; // ...
分类:
其他好文 时间:
2020-06-14 18:36:41
阅读次数:
56
从语言编译器源码入手,编译原理该这么学 视频选集 2/8 P101 P202 P303 P404 P505 P606 P707 P808 标志符 & 关键字: Java 是先一起识别出来,再挑出保留关键字; Python 不区分,在后面语法处理阶段再区分 Java:同时使用自顶向下(总体)和自底向上 ...
分类:
编程语言 时间:
2020-06-14 15:16:47
阅读次数:
91
我当年入门编译原理的时候,是看了一本《游戏脚本高级编程》的书。这本书虽然写得拖泥带水,内容也特别浅,但正是这本书让我知道了如何从头到尾实际地写一个parser + 虚拟机,让我入了门。后来我在 @vczh 的指点下看了Parsing Techniques,自己写了一个正则表达式匹配和LR(K) Pa ...
分类:
其他好文 时间:
2020-06-14 12:33:32
阅读次数:
116
在写编译原理实验的时候,遇到了这个错误: [Error] 'strlen' was not declared in this scope 查阅之后得知,<string.h>里没有strlen,<cstring>才有。 #include<cstring> 头头儿加上这行就好了。 ...
分类:
其他好文 时间:
2020-06-04 19:55:43
阅读次数:
74
在上一篇博客中我们已经讲过如何构造LR(0)分析表,SLR构造分析表的前五个步骤是与LR(0)一样的,因此这里就不再对前五个步骤讲解。 前五个步骤一样的原因:一个文法如果是SLR文法,则它一定是LR(0)文法,因此我们在判断它是不是SLR文法之前要先判断是不是LR(0)文法。 https://www ...
分类:
其他好文 时间:
2020-05-17 14:48:29
阅读次数:
109
最后一次实验! [TOC] 实验四 语义分析与中间代码生成 实验目的 通过上机实习,加深对语法制导翻译原理的理解,掌握将语法分析所识别的语法范畴变换为某种中间代码的语义翻译方法。 掌握目前普遍采用的语义分析方法──语法制导翻译技术。 给出 PL/0 文法规范,要求在语法分析程序中添加语义处理,对于语 ...
分类:
其他好文 时间:
2020-05-17 01:10:06
阅读次数:
66