编译原理 作业四

第二章的总结:

1.句子在构成规则,在第二章在开头,我们庶先理解文法在直观概念,当中最快在方法就是分析句子在构成,通过学习句子结构可以快速理解成日常用语的结构,大大加深理解。

2.文法和语言的形式定义,规则,也称重写规则、产生式、生成式,简单来说就是句子的构成规则,当中有不少定义来规范生成式,然后可以通过构成的句子来推导出句子当中的含义。

3.文法类型:0型文法、1型文法、2型文法、3型文法,四种文法的定义帮助我们正确认识和了解文法的规则,通过某某类型文法来分析各种各样的句子,再进行推导结果。

4.文法的实际应用,其实和早时候学的离散数学的逻辑思维大致上一样,讲究的都是一个推导过程,文法逻辑可以应用在编程上面的逻辑,语法树,各种句型等等,其实都是帮助我们拓展逻辑思维。

尝试写出PL/0 语言的文法。

整数n  n::=0|1|2|3|4|5|6|7|8|9|....

标识符i  i::=1|2|3|..|a|b|c|d|...

表达式e  e::=[+|-]r{+r}       项r::=y{ *|/ y}   因子y  y::=i|n|(e)

条件语句  if A then B

赋值语句  i  =  e

复合语句   begin  A { ;b}   end

函数     ???

程序    <程序>  -> <分程序>
      <分程序> -> [<常量说明部分>][<变量说明部分>][<过程说明部分>]<语句>
      <常量说明部分> -> CONST<常量定义>{ ,<常量定义>}; 

猜你喜欢

转载自www.cnblogs.com/zzkai/p/11577323.html