编译原理就是什么?

编译原理是将高级语言翻译成计算机语言(即计算机所能识别的二进制代码)所遵循的规律,让电脑可以懂得高级语言所表达的东西,内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成。

学习编译原理有什么好处?
当学习完编译原理后我们队高级语言与机械语言之间的转化方法及如何具体如何转化会有一个更深的理解,这可以使得我们在编写程序、修正程序、优化程序结构时的思路更加清晰,有助于我们在查看代码的时候容易生出新颖或者说是更加优秀的吸纳功法。
在学会编程原理后如果我们对电脑语言的理解够深的话我们还能尝试自己编写一种新的计算机语言,在工作方面也有助于自己有了更加广阔的选择空间和提升空间。

不学有什么损失?
不学变异原理的话我们就只能 被编译器所限制,无法用自己的方式更清晰或者更简洁地去编写程序,受限于编译器的“规则”,无法全面发挥自己的才能。
虽然编译没学好的话也可以编写自己所想要的程序,但是如果学会编译的话我们对语言的理解更加透彻,也就是说在看待代码时更容易与自然语言所联系或者说是对应与理解,在这种情况下由于与自身所处熟悉的语言环境所接近,我们在编写程序的时候思路就会更加灵活,而不会被电脑语言所限制,思路变得死板起来,无法用最简练的方式表达自身所理想的效果,会浪费电脑运行效率与电脑储存空间。

如何学习编译原理?

1.反复看书:绝大部分的知识在书上都有,因此理解好书里面的内容对学习好编译原理是很有必要的。
2.与人交流:学习最重要的就是与他人的交流,如果将自己封闭起来的话不仅知识提升效率慢在遇到不懂的时候也很容易卡壳,而且提升的空间也是有限的。
3.使用习题集的方式,通过大量的实验可以让自己快速的掌握所学知识和找出自身的不足。
4.自主小创新:自己尝试着去编译一个小语言,即便最后失败也无所谓,因为在尝试创新的时候肯定会找到自己的不足,同时也会提高自己对编译的熟悉程度和理解程度,有利而无害。

转载于:https://www.cnblogs.com/bin763043666/p/5857498.html

关于编译原理的一点看法相关推荐

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

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

  2. 编译原理 数据流方程_数据科学中最可悲的方程式

    编译原理 数据流方程 重点 (Top highlight) Prepare a box of tissues! I'm about to drop a truth bomb about statist ...

  3. C++编译原理 (转载)

    感觉学一门语言还是必须了解原理比较重要 转载来自:https://blog.csdn.net/zyh821351004/article/details/46425823 第一篇:      首先是预编 ...

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

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

  5. 《OpenMP编译原理及实现技术》摘录

    内容摘自<OpenMP编译原理及实现技术>第2章 代码测试环境:Windows7 64bit, VS2010, 4核机. 可以说OpenMP制导指令将C语言扩展为一个并行语言,但OpenM ...

  6. 添物 不花钱学计算机及编程(预备篇)— 编译原理

    编译原理是将一门语言翻译为另一门语言的学科.如果您只是想当个简单的程序员是可以不用学习的,或者有个了解就可以.但是如果您想更好的发展,就要很好的掌握了. 这门课程最大的特色就是,要自己写代码学习,不能 ...

  7. 学习编译原理对下面这段java跳不出死循环大概能有较好的解释吧

    java 线程问题? public class ThreadTest {public static void main(String[] args){System.out.println(" ...

  8. 编译原理四种文法的理解补充

    如果你是学习,给定一个文法,判断是哪一个文法的话,那这篇不是讲这个,只是一点小小的理解补充. 四种文法如下: 补充: 1.0型文法,即递归可枚举文法相当于图灵机是指: 给定一个文法G,一个句子g,如果 ...

  9. 编译原理:实验一练习

    编译原理:实验一练习 词法分析器 编译原理实验报告 上面的第一个链接中的词法分析器有一点问题,修改后的代码如下: #include "string.h"#include " ...

最新文章

  1. IE8经常停止工作和显示异常
  2. 跟我斗图,我用Python爬虫下载几个G的表情砸死你
  3. case when then else多个条件_CentOS「linux」学习笔记24:if和case多个条件判断
  4. CSS精灵图合成工具
  5. iOS开发周报-- 第一期
  6. Sqlserver备份存储过程
  7. doc2html asp,ASP常见问题及解答(3)-ASP教程,ASP技巧
  8. 网页设计配色方法论:配色秩序
  9. 云计算需要更强大的管理工具
  10. MSDN下载的win7 32位原版镜像无法安装vmtools和提示安装程序无法自动安装Virtual Machine Communication Interface(VMCI)驱动程序
  11. 中国环境统计年鉴 1998-2021年
  12. 5336: [TJOI2018]party
  13. 软文营销成功案例-华为用猫设置手机解锁密码
  14. data单复数一样吗_Data和media的复数是什么?——别以为你很懂复数!
  15. 网友趣解: UCWEB手机浏览器产品说明书
  16. 如何修改PPT文档的编辑版式
  17. Cubase10自编曲平台,享受音乐带来的快乐!
  18. 大数据在高校的应用场景_大数据在高校中的应用研究
  19. 波兰表达式(Polish Notation)简要介绍
  20. [笔记]深入解析Windows操作系统《三》系统机制

热门文章

  1. 从SQL Server 2000/2005到SQL Server 2008的升级测试
  2. Linux 4.0 里,你可能再也不需要重启你的操作系统。
  3. js组合模式和寄生组合模式的区别研究
  4. 23 duplicate symbols for architecture i386
  5. asp.net实现下载
  6. hive--udf函数(开发-4种加载方式)
  7. Oracle 基础练习
  8. 【原创】概率DP总结 by kuangbin
  9. js 运算符 || 妙用
  10. 【SDOI2017】天才黑客