经过相关网页的浏览,也看到了各大网站中各方牛人的回答,我似乎对编译原理有了自己一点粗浅的认识。首先,编译原理及技术从根本上来讲就是对算法问题进行求解,这个问题十分复杂,更不用说其解决算法。 而本学期开的算法分析与上学期学习的数据结构也是讲算法的,不过讲的是基础算法,而编译原理这门课程讲的就是比较专注解决一种的算法。它所包含的内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成等这几大类,要学好是相当的困难,需要倾注自己的苦心与耐心。

  学习编译原理可以更好的去理解代码背后的东西,对自己所写的程序、程序语言都会有更深的本质认识,若果拥有这样的认识,自身肯定可以企及更高的高度,我想别人看到的是语法,我看到的,是背后的实现部分。如此一来,拥有对代码更加通透的理解,对以后的代码编写工作具有相当的帮助。

对于编译原理的学习,作为一个初学者,几乎对书籍都不了解,更不用说如何去通过自己的努力写出一个可以正常使用的编译器,网上说的“龙书”、“虎书”、“鲸书”,三本编译原理中的圣经,完全找不到去看的动力,希望接下来的课程能够激发我的求知欲,那样子,什么书都啃的下。总而言之,兴趣是最好的老师,也是最好的学习方式,有了它,何尝不会自己百度、买书,深入钻研!

而说到自己编写编译器,我越想越不明白到底应该如何编写,还有用何种语言去入手,没有自己的一个思路。也许是生性愚笨,这非妄自菲薄,本来对于计算机方面的知识就没有更深层次的理解,但我不会放过,会更加用心,在学习多点知识后,再来思考这个问题。

转载于:https://www.cnblogs.com/peivxuan/p/4798154.html

0909 粗浅的认识编译原理相关推荐

  1. 0909 编译原理1

    通过上网查找资料后,我对编译原理这门课程有了一定的了解. 1.编译原理旨在介绍编译程序构造的一般原理和基本方法.内容包括语言和文法.词法分析.语法分析.语法制导翻译.中间代码生成.存储管理.代码优化和 ...

  2. 0909初学编译原理

    1.初次接触编译原理,我觉得编译原理学的是将计算机中的高级语言翻译成相对应的机械语言或汇编语言的方法,是一门高深却十分有用的课程.通过了解,我知道了其内容包括语言和文法.词法分析.语法分析.语法制导翻 ...

  3. 编译原理0909的作业

    编译原理是程序员必修的一门课程,类似于电脑的解剖学,是程序员必学的一门科目,不学无法深入了解语言,可能更无法让自己的编程更进一步,是程序员很重要的一门课程.它的学习收获会让我们获益终生 学习编译原理是 ...

  4. 0909 对编译原理的想法

    1.编译原理学什么? 编译原理是学习编译技术的基本理论和实现技术,从源语言提取需要的信息,把源语言翻译成目标语言,大概就是学习编译器方面的产生原理和技术问题. 2.为什么学编译原理? 编译原理让我们学 ...

  5. [编译原理学习]词法分析

    此前一直没能系统完整地学过编译原理,只有很粗浅的理解,虽然其实对工作里的任务也没啥影响,但总觉得缺了一大块知识,加上对所谓程序员三大浪漫(编译器,操作系统,图形学)的向往,所以最近跟着网易云课堂推出的 ...

  6. 编译原理拉链回填技术c语言,编译原理笔记1:概述编译相关的基本知识

    本系列为个人编译原理学习笔记,谬误之处恳请高人指点,感激不尽! 内容整理自西安电子科技大学 王小兵.张南.鱼滨老师的编译原理课程. 编译器的工作步骤 在开始说任何东西之前,我们先来大致看一下编译器是怎 ...

  7. Vue2.0源码解析——编译原理

    Vue2.0源码解析--编译原理 前言:本篇文章主要对Vue2.0源码的编译原理进行一个粗浅的分析,其中涉及到正则.高阶函数等知识点,对js的考察是非常的深的,因此我们来好好啃一下这个编译原理的部分. ...

  8. 学了编译原理能否用 Java 写一个编译器或解释器?

    16 个回答 默认排序​ RednaxelaFX JavaScript.编译原理.编程 等 7 个话题的优秀回答者 282 人赞同了该回答 能.我一开始学编译原理的时候就是用Java写了好多小编译器和 ...

  9. 对学习编译原理的看法

    我认为编译原理这本书是一门与代码做斗争的课程,学习编译原理能够追寻程序设计语言的本质,了解计算机各种语言编译的原理.学习了编译原理能够更加深入的了解计算机各种高级语言使用的原理,能使自己更加容易更加好 ...

最新文章

  1. Ubuntu Server 16升級到Ubuntu Server 18操作步驟
  2. python从入门到放弃系列恶搞短片-太惨!学Python方法用错,直接从入门到放弃!...
  3. python生成激活码
  4. linux命令行下载github文件,Linux命令行下使用GitHub
  5. 第25月第2天 Django-By-Example项目记录01
  6. 【Linux】/dev/null 21 详解
  7. 使用poll实现的io多路复用服务端和客户端
  8. selenium使用浏览器隐私模式加载网站
  9. 好好把握人生的12种财富
  10. 跨域资源请求(除jsonp以外)的方法
  11. 闲谈安全测试之IAST
  12. centos7 下载百度网盘中文件的方法
  13. ios开发——图层的新建属性设置和添加
  14. 微信公众号企业认证/企业公众号微信认证
  15. un7.2:IDEA中实现登录功能
  16. 论文复现-1论文重读:Black-Box Tuning for Language-Model-as-a-Service
  17. 【HTML5期末大作业】制作一个简单HTML我的班级网页(HTML+CSS+JS
  18. 超融合究竟带来了什么 超融合方案有哪些优势 企业超融合方案怎么做?
  19. web前端,css清除浮动的常见方法
  20. 3D模型欣赏:《死亡搁浅》角色Porter 次世代 现实主义 【3D游戏建模教程】

热门文章

  1. JavaWeb中监听器Listener+过滤器filter+拦截器interceptor区别
  2. java 自动类型_java类型自动转换
  3. python列表常用の操作
  4. (递归)斐波那契数列
  5. ajax搜索思路,jquery创建一个ajax关键词数据搜索实现思路
  6. mysql数据异常增长_mysql表到一定数据量后会异常的增长
  7. eclipse maven打包jar 部分jsp无法访问_Maven系列教材 (九)- 在Eclipse中创建maven风格的java web项目...
  8. mailbox 编程_MailboxProcessor从C#
  9. 职高学计算机走单招是,职高学生不用愁了,还有机会上本科,走“单招”或是最佳途径!...
  10. linux vfs 根节点名称,Linux:文件,目录项,索引节点,超级块,VFS,具体文件系统...