[编译原理学习笔记1] 引论

[编译原理学习笔记1] 引论

[1.1] 编译程序

  • 编译器 就是一个程序,它读入用某种语言编写的源程序,并翻译成一个与之等价的另一种语言编写的源程序。

[1.2] 编译过程

  • 词法分析:输入源程序,对构成源程序的字符串进行扫描和分解,识别出一个个单词(也称单词符号,或简称符号)
    在词法分析阶段工作所依循的是语言的词法规则。描述词法规则的有效工具是正规式和有限自动机
  • 语法分析:在词法分析的基础上,根据语言的语法规则,把单词符号串组成各类语法单位
  • 语义分析和中间代码生成:语义分析利用语法分析阶段确定的层次结构来识别表达式和语句中的操作信息及类型信息;本阶段将产生源程序的一个显式中间表示

从上面这一步才开始涉及“翻译”,中间代码即三地址、四元式

  • 代码优化:试图改进中间代码,以产生执行速度较快的机器代码
  • 目标代码生成:生成可重定位的机器代码或汇编代码
  • 表格管理:登记源程序中出现的各个名字和对应属性
  • 错误处理

前端:词法分析、语法分析、语义分析与中间代码产生
后端:与目标机有关的有关的优化,和目标代码的生成

[1.3] 编译程序与程序设计环境

程序设计环境:编译程序与编辑程序、连接程序、调试程序等共同构成
自编译过程:通过一系列的自展途径而形成编译程序的过程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值