为什么要学写编译器

大树告诉我:根有多深,枝有多茂

高楼跟我说:我只所以能建么高,全仗我有深深的基础

盖茨用亲身经历启迪我:编写BASIC编译器的技术积淀对其事业成功很重要,其辉煌的人生履历从此开始。

一位哲人说:决定人生高度的不是浮在表面的一些东西,而是摒弃浮华、 踏踏实实打下的深深基础。

一位游泳教练教导学员:学再多游泳知识,站在岸上不下水的人永远也学不会游泳。

一位武师告诫弟子:练武不练功,到头一场空。

有位读者问作者:学会了写编译器能赚多少钱?

作者回答:编译器编写是练內功,打基础,通过实战完成技术积淀的过程。技术积淀+商业头脑与机遇+坚持与毅力=成功

一位程序员问作者:编译技术我虽然没学会,现在工作不也照样干?

作者回答:不同层次的人竞争不同层次的工作岗位,不同层次的工作岗位有其相应市场价格,要求能力越低的工作岗位竞争越激烈,薪水越低;要求能力越高的工作,满足条件的人才越少,薪水越高。掌握编译技术是每个不甘平庸、不安于现状的程序员的必备基本功。

一位学生问作者:学校为什么要将编译原理这样一门许多人看不懂、学不会、学习目标还不是特别明确的课程设为必修课,为什么非要这么折磨大家?

作者回答:大家的这些困惑作者之前也有,但当作者自己动手写了SCC编译器,才理解了学校与老师的良苦用心,关于编译原理学习目标,我觉得可以表达的更直白一些,学习编译原理就是希望自己能动手写个编译器。编译器编写是编译原理、数据结构与算法,高级语言、汇编语言、机器语言,操作系统可执行文件格式等知识内容一次集中大演习,可以看出编译器实践所用到的知识几乎囊括了计算机专业绝大部分基础课程。学好编译技术确实是受益终生的事情,编译原理作为必修课实在是理所应当。编译原理大家普遍感觉难的深层次原因是理论与实践脱节,缺乏合适的实践教材,《自己动手写编译器、链接器》一书将填补这一空白。

《自己动手写编译器、链接器》作者

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-30 02:28:12

为什么要学写编译器的相关文章

自己动手写编译器、链接器

编译原理与技术的一整套理论在整个计算机科学领域占有相当重要的地位,学习它对程序设计人员有很大的帮助.我们考究历史会发现那些人人称颂的程序设计大师都是编译领域的高手,像写出BASIC语言的BILL GATES,SUN的JAVA之父等等,在编译上都有很深的造诣.曾经在世界首富宝座上稳坐多年的比尔.盖茨也就是从给微机编写Basic语言编译器起家的,也正是这个BASIC编译器为比尔·盖茨和保罗·艾伦的微软帝国奠定了基础.正是这个编写Basic语言编译器的经历,开启盖茨的辉煌职业生涯.编译器是一种相当复杂

一点一点学写Makefile(3)-增加第三方库和头文件

我们在写代码的时候不一定都是有自己来完成,一个工程中会大量使用一些比较优秀的动态库.静态库等,我们在使用这些库完成所有的代码后,需要在编译的时候将这些库使用的头文件添加到我们的工程上,将他的库文件也添加到我们的工程中,接下来我们就来看一下怎么来添加. 我们在项目中很少将第三方库与我们自己的代码放到同一个目录中,而是有一些约定俗成的存放方法: 如上图,我们会将第三方库的头文件放到include文件夹,将第三方的静态库放到lib文件夹,将动态库放到bin文件夹,(注:如果是使用开源库尽可能使用静态库

自己动手写编译器

<自己动手写编译器.链接器> 纸上得来终觉浅,绝知此事要躬行.                                 ——陆游 编译原理与技术的一整套理论在整个计算机科学领域占有相当重要的地位,学习它对程序设计人员有很大的帮助.我们考究历史会发现那些人人称颂的程序设计大师都是编译领域的高手,像写出BASIC语言的比尔·盖茨,Sun公司的Java之父等,在编译领域都有很深的造诣.曾经在世界首富宝座上稳坐多年的比尔·盖茨也是从给微机编写BASIC语言编译器起家的,也正是这个BASIC编译

自己动手写编译器、链接器作者自序

<自己动手写编译器.链接器> 纸上得来终觉浅,绝知此事要躬行. --陆游 编译原理与技术的一整套理论在整个计算机科学领域占有相当重要的地位,学习它对程序设计人员有很大的帮助.我们考究历史会发现那些人人称颂的程序设计大师都是编译领域的高手,像写出BASIC语言的比尔·盖茨,Sun公司的Java之父等,在编译领域都有很深的造诣.曾经在世界首富宝座上稳坐多年的比尔·盖茨也是从给微机编写BASIC语言编译器起家的,也正是这个BASIC编译器为比尔·盖茨和保罗·艾伦的微软帝国奠定了基础.这个编写BASI

自己动手写编译器自序

<自己动手写编译器.链接器>  网址 纸上得来终觉浅,绝知此事要躬行.                                 ——陆游 编译原理与技术的一整套理论在整个计算机科学领域占有相当重要的地位,学习它对程序设计人员有很大的帮助.我们考究历史会发现那些人人称颂的程序设计大师都是编译领域的高手,像写出BASIC语言的比尔·盖茨,Sun公司的Java之父等,在编译领域都有很深的造诣.曾经在世界首富宝座上稳坐多年的比尔·盖茨也是从给微机编写BASIC语言编译器起家的,也正是这个BAS

自己动手写编译器、链接器一书作者自序

<自己动手写编译器.链接器>  购买网址 纸上得来终觉浅,绝知此事要躬行. --陆游 编译原理与技术的一整套理论在整个计算机科学领域占有相当重要的地位,学习它对程序设计人员有很大的帮助.我们考究历史会发现那些人人称颂的程序设计大师都是编译领域的高手,像写出BASIC语言的比尔·盖茨,Sun公司的Java之父等,在编译领域都有很深的造诣.曾经在世界首富宝座上稳坐多年的比尔·盖茨也是从给微机编写BASIC语言编译器起家的,也正是这个BASIC编译器为比尔·盖茨和保罗·艾伦的微软帝国奠定了基础.这个

学写jQuery插件开发方法

jQuery如此流行,各式各样的jQuery插件也是满天飞.你有没有想过把自己的一些常用的JS功能也写成jQuery插件呢?如果你的答案是肯定的,那么来吧!和我一起学写jQuery插件吧! 很多公司的前端设计开发人员都是女孩子,而这些女孩子很多JavaScript技能都不是很好.而前端开发过程中,JavaScript技能又是必不可少的.所以,如果前端小MM正在为某个JavaScript效果发愁的时候,你潇洒的过去,然后对她说:“嗨,美女,用这个吧.这是我写的一个jQuery插件.”我想基本上你的

跟我一起学写jQuery插件开发方法(转载)

jQuery如此流行,各式各样的jQuery插件也是满天飞.你有没有想过把自己的一些常用的JS功能也写成jQuery插件呢?如果你的答案是肯定的,那么来吧!和我一起学写jQuery插件吧! 很多公司的前端设计开发人员都是女孩子,而这些女孩子很多JavaScript技能都不是很好.而前端开发过程中,JavaScript技能又是必不可少的.所以,如果前端小MM正在为某个JavaScript效果发愁的时候,你潇洒的过去,然后对她说:“嗨,美女,用这个吧.这是我写的一个jQuery插件.”我想基本上你的

自己写编译器、链接器之序

<自己动手写编译器.链接器> 因为工作的关系,我经常和各企业的技术负责人交流.话题谈着谈着常常会转到他们目前共同的难题--技术人员招聘.这时不少人都会感慨,中国能做系统软件开发的技术人员太少,这方面的人太难找了.随着中国企业的发展,做系统和平台的需求不断增加,这种供需矛盾将越来越明显. 究其原因,很容易想到的是我们的高校教育.课程设置.美国顶尖大学计算机系基础课程教学里都非常重视项目实践,操作系统课往往要真的开发一个像模像样的操作系统原型,编译器课也真的要自己设计并实现一门有创新性的小语言--