编译原理系列之二 文法和语言

文法和语言

  • ε,{ε},Ø三者之间的区别

    ε是一个终结符推导出的结果,表示一个不包含任何字符的序列。

    Ø是不包含任何元素的空集{},表示不存在匹配文法的句子。

    {ε}是任意一个符号串集合的0次幂,表示一个由空字组成的集合。

  • 句子与句型

    如果符号串x是由起始符号推导出的,则称x是文法G[S]的句型。

    如果x中只包含终结符,则称x是文法G[S]的句子。

    文法描述的语言是该文法一切句子的集合。

  • 四种文法

    0型文法:α→β,其中α至少包含一个非终结符。

    1型文法(上下文有关文法):α→β,其中|β|≥|α|S→ε除外。

    2型文法(上下文无关文法):a→β,其中a是一个非终结符。

    3型文法(规范文法):A→aA→aB.

    4种文法是逐渐增加限制的,所以规范文法一定是0型文法、1型文法、2型文法,上下文无关文法也一定是0型文法、1型文法...

  • 规范推导

    最右推导为规范推导,由规范推导推出的句型称为右句型或规范句型。

  • 文法的二义性

    一个句型可能对应多个语法树,一个句型可能对应多个最左/最右推导。

    如果一个文法中的某个句子可以对应两个不同的语法树,则称这个文法是二义的。

    两个不同的文法可能是一样的语言。

    如果一种语言的所有文法都是二义的,则称此语言先天二义。

    判定一个文法是否是二义的是递归不可解的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 编译原理 第一章 引言 1.从面向机器的语言到面向人类的语言 汇编指令:用符号表示的指令被称为汇编指令汇编语言:汇...
    SnorlaxSE阅读 55,344评论 5 60
  • 形式语言 1. 关于语言的定义 人类所特有的用来表达意思、交流思想的工具,是一种特殊的社会现象,由语音、词汇和语法...
    SHAN某人阅读 4,481评论 0 1
  • 一、绪论 编译程序 功能:高级pro转低级目标pro 形式编译执行转obj在执行,效率高跨平台性差解释执行逐行解释...
    rh_Jameson阅读 3,693评论 0 10
  • 在前边的文章中我们把简单的需要的基础知识简单的列举了一遍,包括简单的集合逻辑,还有图论以及一些的证明方法等等,接下...
    云时之间阅读 1,852评论 0 6
  • 如果我是风我不想随季节变化我只想在春天轻抚你的柔发在夏天给你吹吹冷风在秋天飞你头上打转在冬天便悄悄躲起来如果你是风...
    苏炳瑞阅读 141评论 0 0