zoukankan      html  css  js  c++  java
  • 作业4

    1.梳理第二章的内容,写一篇理解与总结。

    理解:这一章我学习了文法和语言,了解到了文法与语言的形式定义,文法和语言的规则、分析、类型和推导,还学习了上下文无法文法以其语法树。

    文法是语言的一种表现形式,文法是由非终结符(大写字母)和终结符(小写字母)以及“—>”组成的,通过这一章的学习我学会了构造文法来表达语言,即利用文法的规则和推导手段,将语言中的每个句子用严格定义的规则来构造,它的行为相当于一个过程:输入一个符号串判断是否属于某语言,如果是,则该过程经过有限次的计算然后停止回答“是”;如果不属于,则该过程要么停止回答“不是”,要么该过程永远的运行下去。而文法也有四个类型,0型文法、上下文有关文法、上下文无关文法和正规语言。

    总结:这章的学习主要是学习如何推导文法跟语法树,通过构造文法来表达语言。这对我们的逻辑思维还是有一定要求,同时通过这些锻炼了我们的逻辑思维。

    2. 尝试写出PL/0 语言的文法。(或者你认为比较好的语言规则)

    整数n

    标识符i

    表达式e

    条件语句

    赋值语句

    复合语句

    函数

    程序

    ...

    整数n      n->0|1|2|3|……|8|9

    标识符i     i->a|b|c|……|y|z|A|B|C|……|Y|Z (<字母>{<字母>|<数字>} )

    表达式e     ::= [+|-] <项> {<加减运算符><项>}

    条件语句    ::= if <条件> then <语句>

    赋值语句    ::= <id> :=<表达式>

    复合语句    :: = begin<语句>{;<语句>} end

    函数        ::= =<主函数>

    程序       ::=<分程序>::=[<常量说明部分>][<变量说明部分>][<过程说明部分>]<语句>

  • 相关阅读:
    base64编码的字符串与图片相互转换
    超酷3D照片展示效果
    table内容保存到Excel中
    项目管理--PMBOK 读书笔记(3)【项目经理的角色 】
    项目管理--PMBOK 读书笔记(2)【项目运行环境】
    项目管理--PMBOK 读书笔记(1)【引论】
    C# ASP.NET递归循环生成嵌套json结构树
    将XML转换为JSON并强制数组
    Yapi Docker 部署
    Spring Cloud Feign+Hystrix自定义异常处理
  • 原文地址:https://www.cnblogs.com/dengweijiang/p/11599895.html
Copyright © 2011-2022 走看看