编程语言介绍
发布日期:2021-06-28 18:55:00 浏览次数:2 分类:技术文章

本文共 933 字,大约阅读时间需要 3 分钟。

一、语言的发展历程:

编程语言经历到现在大体上有3个发展历程:

 

从最早的机器语言(01) → 汇编语言 → 高级语言。越是底层的语言执行速度越快,但是越难以理解,耗时越多,门槛越高。现在基本上不会有人去直接写机器语言。越是高级的语言,越是容易让人理解,开发效率高,门槛低一些。随着现在计算机处理速度越来越快,人们的生活节奏越来越快。人们对效率重视程度很高。自然使用高级语言来开发软件是必然的结果,是历史发展的趋势。所以在现在语言百花齐放的时代,也可以大胆的预测。现在变成语言都是高级语言。

二、现代编程语言也有如下的分类:

  • 面向过程、面向对象、面向函数
  • 静态类型、动态类型
  • 编译执行、解释执行
  • 有虚拟机、无虚拟机
  • 有 GC、无 GC

 

这里特别注意的一点就是虚拟机和GC并没有必然的关系。虚拟机指,语言动态运行的环境。GC是的语言内存垃圾回收的方式。

 

三、语言跨平台:

所有系统都是运行在操作系统上的,所有语言编写的程序也是如此。现在操作系统基本是几个霸主的天下:windows派、linux派等。所有语言都想一次编写到处使用。那么对于语言如何实现跨平台呢?主要有以下两个方式:

  • 源代码跨平台

 

  • 二进制跨平台

 

 

四、编程语言的本质和编译过程

编程语言的本质就是把人脑的逻辑思维翻译成机器能够执行的方式。但是高级语言和低级语言之间存在着巨大的鸿沟,怎么把高级语言翻译成可以执行的机器语言是一个非常难的问题!这时候人类需要一个编译器。根据查询资料得知在1957年,第一个高级语言的编译器在IBM 704 机器上成功运行。

到了现在已经形成了一条专门的翻译流水线。流水线如图:

 

其中在语法分析阶段,据说用了有个叫什么上下文无关语法的理论,竟然能按照语法规则建成一棵树。可以采用ANTLR工具完成语法分析工作。

 

五、总结:

今天总结了编程语言相关的一些知识。表面上看上去很基础,和java等一些语言没什么关系。但是理论是相同的。java作为一种高级语言也是有编译过程的。java源文件到字节码文件其实就是翻译的过程,是现代编程工程帮助我们完成了这一个工作。或者使用javac命令执行编译过程。同理,sql、大数据等技术领域都有编译器的身影。

所谓万变不离其宗,也许及时这个道理吧。

转载地址:https://blog.csdn.net/xt00002003/article/details/114273387 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:JVM 基础知识
下一篇:soul源码学习-20210114

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月01日 05时24分01秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章