编译原理--笔记

一、概念

  • 编译器:也是一个程序,把源程序转变为等价的另一种源程序(比如汇编==机器语言)
  • 词法分析
  • 变量,函数都是标识符。
  • 符号表-标识符相关的各种属性,贯穿编译的各个过程,每个过程都可能添加修改表数据:
    1. 若是变量名,名称,类型,kind种属(简单,复杂),值,存储位置,作用域
    2. 若是过程名,名称,类型,参数,返回值类型。
  • 语法分析
    1. 建立语法树
    2. 存储分配,先根中根后根

二、编译基础:形式语言与自动机

  • 字母表:有穷非空字符集,可识别符合{a-z,A-Z,0-9
  • 字符串:字母表中符合组成的任何有穷序列
  • 字符串运算符
    1. 连接:xy称为x,y的连接
  • 闭包:A*=A0 u A1 u A2… //任意长度的集合,A0={e} 空串
  • 正闭包:A+ = A* - A0
  • 对于任何一个句子,存在两个过程,都以语法为规则。
  • 读–识别过程–编译的过程
  • 写–推导过程–书写源程序
  • 集合图论==离散数学,是形式语言的基础,形式语言是数学范畴。是编译的基础
  • 文法是个四元组G=(Vn非终结符,Vt终结符,P产生式,S开始符号)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值