摘要: 1.分别写出描述以下语言的正规文法和正规式: L1={abna|n≥0}。 正规文法:A → aBa B → Bb | ε 正规式: A = ab*a L2={ambn|n≥1,m ≥1} 正规文法: S → AB A → aA | a B → bB | b 正规式: S = aa*bb* L3={ 阅读全文
posted @ 2019-10-17 20:09 Notes_zeng 阅读(281) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h>#include<string.h>#define N 80char word[6][10]={"begin","if","then","while","do","end"};void Analyse(char a[]);main(){ char a[N]; int 阅读全文
posted @ 2019-10-11 20:07 Notes_zeng 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 1.梳理第二章的内容,写一篇理解与总结。 编译器:最基本的数学模型是有穷状态机FSM和正则表达式。它们用来描述词法单位(关键字,标识符)以及被编译器用来识别这些单位的算法。此外,上下文无关文法用于描述程序设计语言的语法结构。 标识符:是一个字符串。所有的标识符都是名字,但有些名字也可以是表达式,变量 阅读全文
posted @ 2019-09-27 16:25 Notes_zeng 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 1.已知文法: S->a|^|(T) T->T,S|S 分析句型(T,(^,a)),求全部的短语、直接短语和句柄。 2.构造上下文无关文法,描述语言: {anbn|n>=0} {ambn|m>=n>=0} if语句 (1) 文法:S -> aSb | ab | ε if语句: if (n>=0) t 阅读全文
posted @ 2019-09-19 19:08 Notes_zeng 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 1.文法G(Z):Z->aZb|ab定义的是什么样的语言? 产生式:Z->aZb, Z->ab Z=>ab, Z=>aZb=>a²b² Z->aZb, 得 Z=>aZb=>a²Zb²...=>aⁿ﹣¹Zbⁿ﹣¹=>aⁿbⁿ 文法确定的语言为:L(G[Z])={aⁿbⁿ|n≥1} 1.文法G(Z):Z 阅读全文
posted @ 2019-09-11 21:44 Notes_zeng 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 1)简述编译程序与翻译程序、汇编程序的联系与区别。 编译程序将高级语言翻译成汇编语言,再通过汇编程序将汇编语言翻译成机器语言,但是编译程序只能将源语言(高级语言,如Python、C++)编译成目标语言(低级语言,汇编语言), 编译程序是翻译程序的一种,汇编程序是将汇编语言翻译成机器语言。 2)编译过 阅读全文
posted @ 2019-09-03 10:41 Notes_zeng 阅读(187) 评论(0) 推荐(0) 编辑