编译原理速通笔记

参考getianao的博客

引论

编译程序:
是一个语言翻译程序,它将源语言程序翻译成目标语言程序。


编译流程:
待预处理的源程序——(预处理)源程序——(编译)目标汇编程序——(汇编)可重定位的机器语言——(连接装入)可执行

编译程序(源程序到目标汇编)的6个阶段:

  • 词法分析:识别单词,返回类别、值;错误处理
  • 语法分析:单词序列分解成语法短语,构成程序
  • 语义分析:是否符合语义规则
  • 中间代码生成:生成中间代码(容易被翻译)
  • 代码优化:
  • 目标代码生成:生成特定机器上的绝对指令代码或可重定向的指令代码

分析阶段、逻辑阶段

前端:词法分析、语法分析、语义分析
中端:中间代码生成、优化
后端:目标代码生成、优化

解释程序与编译程序的区别:
 目标代码执行方式不同
不产生目标程序文件
不区别翻译阶段和执行阶段,翻译源程序的每条语句后直接执行
程序执行期间一直有解释程序守候
常用于实现虚拟机

文法和语言
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值