正式学习编译原理之前的整理


如下有一个小目标


对于普通程序员,我认为编译原理这门课主要掌握几点就够用了:

  1. 词法分析方面,掌握正则表达式,了解dfa/nfa。
  2. Parsing 方面,能读懂BNF,知道AST,会写简单的递归下降parser,会用antlr之类的parser generator。
  3. 优化方面,知道现代编译器的优化能力有多强,知道如何配合编译器写出高效易读的代码,避免试图outsmart编译器。
  4. 会实现简单的虚拟机(stack-based,不带GC),并把四则运算表达式翻译为虚拟机指令。
    ——引自山威油条博客:
    山威油条的感悟.

一个整理了一些相关知识的网站链接:
编译原理基础


你在查资料的时候应该也会遇见大量的龙书,虎书,鲸书的说法,不用查了给你一个直通车↓↓↓
龙书、虎书、鲸书是什么.


刚开始学习,查了一些经验贴,总结说来,

  • 刚开始学习不建议直接看龙书、虎书和鲸书,而要先看一些可以实践的书籍(有人觉得虎书薄,且有利于实践),比如有人推荐了两本书,一本叫《编译原理与实践》,另一本叫做《计算机系统要素》(刚下单)。

  • 编译原理是一门对背景知识要求很重的课程,边实践边学理论是很多人觉得有效的方法

  • 在知乎“如何学习编译原理的”问题下,还有一些别的网站可供学习,比如这里有一个被说靠谱的 实现一个编程语言专栏

  • 还有一个被推荐为手把手的教程,英文阅读能力好戳它看看


2021.01.26

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值