zoukankan      html  css  js  c++  java
  • 编译原理 部分名词解释

    翻译程序:是指这样的程序能够把某一种语言程序(源语言程序)转化成另一种语言程序(目标语言),而后者与前者在逻辑上是等价的
    编译程序:源语言是诸如Java、C、Ada、Pascal这样的“高级语言”,目标语言是诸如汇编语言的“低级语言”,这样的一个翻译程序就称为编译程序
    编译程序的工作一般可以划分为5个阶段:
     词法分析、语法分许、语义分析及中间代码的生成、优化、目标代码生成
     
    编译程序各个阶段之间的关系: 
     下一阶段将上一阶段的结果进行处理
     
    程序语言主要由语法、语义两方面定义
    高级程序语言是用来描述算法和计算机实现的双重目的
    语法分析树(语法树)是对句子的描述
    文法描述语言的语法规则
    上下文无关文法G包括四个组成部分: 
     终极符号,非终结符号(大写符号),开始符号,产生式
     
    箭头“→”读作“定义为”,直竖“|”读作“或”,它们都是源语言符号
    句型:由终结符号和非终结符号组成的文法
    句子:仅含终极符号的句型
    语言:由文法产生的所有句子组成
    最左推导是指:对于任何a ==> b,都对a的最左非终结符号进行迭代
    如果一个文法存在一个句子对应两棵不同的语法树,则称这个文法是二义的
    二义文法:
     1、最左端是一个非终结符号
     2、左边的个数≤右边的个数
     
    确定有限自动机(DFA),非确定有限自动机(NFA)
    一个LEX源程序主要包括两部分
     1、正规定义式
     2、识别规则
     
    闭包:由集合中的元素组成的无数多个串(其实跟循环差不多)
    消除左递归的方法:
     eg:P ==> Pα|β
     ---------
     P ==> βP'
     P' ==> αP’|e
     
    短语:语法树中任意子树节点所组成符号串
    直接短语:只有两代的端末
    句柄:由最左推导的出来的直接短语
    规范规约:针对α的最左规约,即就是最右推导的逆过程
    规范规约,即就是由上一步推导出下一步的过程、式子;而句柄,指的是该式子、公式推导符号的推导结果
    “移进-规约”过程由4个列组成
     步骤、符号串、输入串、动作
     
    算符优先文法的判定:
     只要优先关系表中没有多重入口
     
    算符优先的分析过程  等价于  移进-归约
    附注语法树,带注释的语法树
     
  • 相关阅读:
    NodeJs使用Mysql模块实现事务处理
    Javascript(JS)对Cookie的读取、删除、写入操作帮助方法
    SLERP 导数
    General matrix representations for B-splines 论文理解
    搭建私人实体编译服务器
    A Micro Lie Theory 论文理解
    [备忘,无新意] undistort (求反函数对某个值的映射)使用迭代优化方法
    Dual Quaternion representing Rigid Transformation
    B 样条曲线的 SE(3) 应用
    [ceres-solver] From QuaternionParameterization to LocalParameterization
  • 原文地址:https://www.cnblogs.com/GetcharZp/p/9188767.html
Copyright © 2011-2022 走看看