zoukankan      html  css  js  c++  java
  • 软考编译原理总结

    导图总结如下:

    编译原理:

     

       软考中要考的主要的是文法、正规式、有穷自动机、语法推导树和算符优先。

     

    文法

    0型文法、1型文法、2型文法、3型文法。

     

    0型文法是限制最少的一个。有Vn:非终结符集合。Vt:终结符集合。P:推导式集合

    S:开始符。只要推导式的左侧至少含义1个非终结符就可。

     

    1型文法又叫上下文有关文法,他要求在0型文法的基础上,要求推导式的右侧的长度大于等于左侧的长度。

     

    2型文法又叫上下文无关文法,他要求在1型文法的基础上,推导式的左侧是分终结符。

     

    3型文法又叫正规文法,他规定了推导式的型状,只能是左线性或者右线性。

    所以,这几种文法,一个比一个限制高。0型文法包含1型文法,1型文法包含2型文法,2型文法包含3型文法。

     

    正则式

    要掌握正则式和正则文法的转换。转换规则:

     

    有穷自动机

     

    要掌握确定性的有穷自动机DFA、不确定性的有穷自动机NFANFA如何转换为DFA,和正规式和有限自动机的转换。

     

    确定性的有穷自动机DFA和不确定性的有穷自动机NFA的区别主要是,确定性的有穷自动机初始态只有1个,二不确定性的右多个。

     

    NFA转换为DFA,是将所有的开始状态作为一个集合,然后分别按照不同的推导出不同集合,然后再把新组成的集合在按照不同的推导出新的集合,这样不断不断重复下去,直到不出现新的集合,然后把这些新的集合当成新的状态节点,组成一个DFA

    正则式和有限自动机的转换,按照下面的规定转换即可。

     

    语法推导树

    要掌握什么事语法推导树,短语,简单短语和句柄。会写语法推导树。从语法推导树中求短语、简单短语、句柄。

    算符优先

    要会会期算符有限关系表。先求FIRSTVT集合和LASTBT集合,然后记住下面这几种算符有限关系规则即可:

  • 相关阅读:
    版本管理工具:linux下svn的基本使用
    驱动: 中断【3】为什么可能导致睡眠的函数都不能在中断上下文中使用呢?
    驱动:中断【2】中断处理程序、中断上下文中处理延时及一些函数的调用规则(调IIC中断驱动有感)
    驱动: 中断【1】linux中断流程
    驱动: oops
    嵌入式:nfs挂载开发板的几个陷阱
    字符设备驱动: register_chrdev和register_chrdev_region
    likely() and unlikely()
    windows desktop.ini
    高通电源管理qpnp-vm-bms驱动
  • 原文地址:https://www.cnblogs.com/pangblog/p/3331292.html
Copyright © 2011-2022 走看看