首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

计算机语言是怎样设计出来的

所谓计算机语言只是一个抽象的规范,而编译器是这个规范的实现,它是在这个规范的严格定义下被实现的....编程语言是怎么设计出来的? 编程语言设计是在纸上完成的。你需要决定两个东西: 语义 文法 是用更底层的语言来写?汇编?那汇编是怎么设计出来的? 这是说编译器的实现。...至于说语言设计的原则,就是必须满足图灵完备的这个特征的,只要有图灵完备这个特性,这门语言从理论上来说就能够表达任何一个可计算的问题,因此就能够被我们用于描述问题的解的算法。...但是计算机不能够直接理解我们设计的语法,因此我们需要根据我们(编程语言的设计者)和你(语言使用者)之前约定的语法,将编程语言转换成可直接理解的汇编指令。 所谓转换,实际上就是降低抽象的层次。...至于说汇编语言,同高级语言一样是被设计出来的。CPU的制造者根据自家CPU能够执行的操作,制定了一套语法用于表示这些操作。

69610

为啥计算机语言难学?

很多人觉得计算机太难学了,里面很多专业术语都不明白,如果单纯从人类语言的角度考虑,很多计算机语言的确很难直接体现出很人性化的地方,所以要学好计算机语言,首先不是让自己记住有多少困难,学任何东西都存在困难...,这是学新东西的通病不是仅仅针对计算机语言。...所以要学好计算机语言,就要收起自己感性的思想,多去涉及逻辑思想。...调整自身的心态去应对进入计算机语言的语境之中,培养自己的计算机语言的语感,久而久之养成自己的逻辑思维习惯。 ?...所以学习计算机语言之前需要补补相关的知识,起码知道二进制和十六进制之间的转化这些大路边上的知识点还是要掌握的。

97160
您找到你想要的搜索结果了吗?
是的
没有找到

几种计算机语言的评价

为了与C兼容,C++被迫作出了很多重大的设计妥协,结果导致语言过分华丽,过分复杂。为了与C兼容,C++并没有采用自动内存管理的策略,从而丧失了修正C最严重问题的机会。...总结:C++优点在于作为编译型语言,把效率与泛型和面向对象特性结合起来,其缺点在于过于华丽复杂,倾向于鼓励程过分复杂的设计。...Java Java的设计很聪明,它采用了自动内存管理,这是最大的改进,支持OO设计带来的好处虽然不那么突出,不过也很值得赞赏,相比C++,其OO设计规模小而且简单 。...有些地方设计的还是太复杂,甚至有缺陷。Java的类可见性和隐式scoping规则太复杂了。Interface机制是为了避免多继承带来的问题而设计的,但是要理解和使用它还是挺难。...Python语言非常干净,设计优雅,具有出色的模块化特性。它提供了面向对象能力,但不强迫用户进行面向对象设计

76340

几种计算机语言的评价(修订版)

下面是我的笔记,整理了六种主要计算机语言的优缺点。读完就会知道,对于不同的任务,应该选择哪一种语言了。 原文写于2003年。...==================== 几种计算机语言的评价 作者:Eric Raymond 摘自《Unix编程艺术(第十四章)》 ? 一、C C语言的优点是,运行效率高和接近机器语言。...总的来说,C++的优势还是程序效率,以及面向对象编程能力,糟糕之处是它鼓励复杂的设计。 三、Shell Shell程序写起来很容易,对于简单的任务,开发速度很快。...Perl的主要缺点是某些部分设计得非常丑陋,且无法补救,某些部分也过于复杂。当程序规模增大时,必须严格遵守约定,才能保证模块化和设计的可控性,难于维护。...六、Java Java发布于1995年,设计目标有两个。

81180

各种计算机语言的经典书籍(CC++JavaC#VCVB等)

Petzold“windows编程泰山北斗”—C#语言“倚天屠龙双剑” C# Primer中文版——–Stanley B.Lippman—C#语言“倚天屠龙双剑” .NET框架程序设计(修订版)——–...8、设计模式:可复用面向对象软件的基础------good!...Brey 80*86、奔腾机汇编语言程序设计———Barry B....Brey Windows环境下32位汇编语言程序设计(第2版)———–罗云彬 IBM-PC汇编语言程序设计(第2版) 本书是国内优秀教材——–沈美明 温冬婵 IBM PC汇编语言程序设计(第五版) 这本书籍是国外优秀教材...Linux设备驱动程序 第三版(英文影印版) Linux内核设计与实现(第2版) Linux内核设计与实现(英文影印版)(第2版) linux技术手册 20、游戏编程 Windows游戏编程大师技巧

1.1K20

观点 | 论机器学习和编程语言:ML需要专用的计算机语言吗?

很少有其它领域像机器学习一样有语言级的设计需求,但在形式化推理或集群计算等领域,量身定制的语言已经证明它们是高效的解决方案。...Graph IR 和 XLA、ONNX、NNVM 等格式正在变得前所未有的复杂,同时也在受到传统语言设计的启发,甚至可能会出现表面语法,以成为完整意义上的编程语言。...所有这些都预示着机器学习系统的设计者们面临着非常大的挑战。尽管如此,我们还有一些好消息:如果有一方面仍未解决的话,过去的几十年里,计算机语言的研究者们已经深入讨论了同样的问题。...这将是未来十年里计算机语言领域里人们面临的主要问题。 原文地址:https://julialang.org/blog/2017/12/ml&pl 本文为机器之心编译,转载请联系本公众号获得授权。

1.7K70
领券