摘要: 1.将以下文法消除左递归,分析符号串 i*i+i 。 并分别求FIRST集、FOLLOW集,和SELECT集 E -> E+T | T T -> T*F | F F -> (E) | i 2.P101练习7(2)(3)文法改写,并分别求FIRST集、FOLLOW集,和SELECT集 (2) (3) 阅读全文
posted @ 2019-11-14 20:52 ling9709 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 1.将DFA最小化:教材P65 第9题 2.构造以下文法相应的最小的DFA S→ 0A|1B A→ 1S|1 B→0S|0 3.自上而下语法分析,回溯产生的原因是什么? 文法中,对于某个非终结符号的规则其右部有多个选择项,当根据所面临的输入符号不能准确的确定所要的选择项时,就可能出现回溯。 4.P1 阅读全文
posted @ 2019-11-07 20:15 ling9709 阅读(593) 评论(0) 推荐(0) 编辑
摘要: NFA 确定化为 DFA 子集法: f(q,a)={q1,q2,…,qn},状态集的子集 将{q1,q2,…,qn}看做一个状态A,去记录NFA读入输入符号之后可能达到的所有状态的集合。 步骤: 1.根据NFA构造DFA状态转换矩阵 ①确定DFA初态(NFA的所有初态集),字母表 ②从初态出发,经字 阅读全文
posted @ 2019-10-31 20:50 ling9709 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 正规式到正规文法 对任意正规式R选择一个非终结符Z生成规则Z→R 1.对形如A→ab的规则,转换成A→aB,B→b 2.将形如A→a|b的规则,转换成A→a,A→b(A→a|b) 3.将形如A→a*b的规则,转换成A→aA,A→b 将形如A→ba*的规则,转换成A→Aa,A→b 不断利用上述规则进行 阅读全文
posted @ 2019-10-24 10:33 ling9709 阅读(827) 评论(0) 推荐(0) 编辑
摘要: 1.分别写出描述以下语言的正规文法和正规式: L1={abna|n≥0}。 解:正规文法: S→aA A→bna A→Ba B→bn B→bB|b 正规式: B=b* A=b*a S=ab*a L2={ambn|n≥1,m ≥1} 解:正规文法: S->AB A->aA|a B->bB|b 正规式: 阅读全文
posted @ 2019-10-15 23:32 ling9709 阅读(456) 评论(0) 推荐(0) 编辑
摘要: 词法分析程序(Lexical Analyzer)要求: - 从左至右扫描构成源程序的字符流 - 识别出有词法意义的单词(Lexemes) - 返回单词记录(单词类别,单词本身) - 滤掉空格 - 跳过注释 - 发现词法错误 程序结构: 输入:字符流(什么输入方式,什么数据结构保存) 处理: –遍历( 阅读全文
posted @ 2019-10-11 20:15 ling9709 阅读(1727) 评论(0) 推荐(0) 编辑
摘要: 1.梳理第二章的内容,写一篇理解与总结。 第二章首先介绍了文法的相关概念以及概念的推导过程,接着介绍了符号和符号串,其中字母表的定义为元素非空有穷集合,字符串为由字母表中的符号组成的任何有穷序列。接着介绍字符串的一些运算,例如:符号串的头尾,固有头和固有尾;符号串的连接;符号串的方幂;符号串集合。文 阅读全文
posted @ 2019-09-26 15:55 ling9709 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 1.已知文法: S→a|^|(T) T→T,S|S 分析句型(T,(^,a)),求全部的短语、直接短语和句柄。 S=》(T)=》(T,S)=》(T,(T))=》(T,(T,S))=》(T,(S,S))=》(T,(^,S))=》(T,(^,a)) 语法树: 短语:(T,(^,a)) T,(^,a) ( 阅读全文
posted @ 2019-09-19 18:34 ling9709 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 1、文法G(Z):Z→aZb|ab定义的是什么样的语言?G(Z):Z→aZb|ab Z→aZb→aaZbb→a...Z...b→a....ab....b→a^nb^n(n≥1) 则:L(G)={anbn|n≥1 } 2.写出教材22页例2.2中标识符的文法四元组形式。 文法G={VN,VT,P,S} 阅读全文
posted @ 2019-09-12 09:32 ling9709 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 1)简述编译程序与翻译程序、汇编程序的联系与区别。 翻译程序是指把高级语言源程序翻译成机器语言源程序(目标代码)的软件。 翻译程序有两种:一种是编译程序,它将高级语言源程序一次性全部翻译成目标程序,每次执行程序时,只要执行目标程序。另一种是解释程序,它的执行过程是翻译一句执行一句,并且不会生成目标程 阅读全文
posted @ 2019-09-03 11:25 ling9709 阅读(320) 评论(0) 推荐(0) 编辑