当前位置:首页 > 公众号精选 > 21ic电子网
[导读]学编程的过程中,总是有小伙伴纠结我到底是该学C语言呢?还是Python呢?或者学Java? 那到底为什么编程需要这么多编程语言呢? 编程语言的起源是怎样的? 其实编程语言并不是一开始就有这么丰富以及好用的语言的,而是经过几十年的发展才逐渐有今天这样多样的

学编程的过程中,总是有小伙伴纠结我到底是该学C语言呢?还是Python呢?或者学Java?


那到底为什么编程需要这么多编程语言呢?


编程语言的起源是怎样的?

其实编程语言并不是一开始就有这么丰富以及好用的语言的,而是经过几十年的发展才逐渐有今天这样多样的语言。


迄今为止,我们一般认为编程语言的发展主要有三个阶段:
1、机器语言

2、汇编语言

3、高级语言

机器语言

机器语言是第一代机器语言,是0和1代码。因为计算机的CPU只能识别0和1,所以最初编程用的就是0和1。


比较典型的设备是雅卡尔提花机的织布机:
我们可以看到,写代码就是要在纸上打孔,这样写程序不仅很麻烦,而且程序还不好理解,我们也只看到了一个个的洞,不知道这是干嘛的。
为了能让我们在偷懒情况下,更好完成工作,科学家们经过不断地摸索试验,使得编程进入了下一个阶段——汇编编程。

汇编语言

汇编语言相对于机器语言有什么差别呢?首先就是汇编能让人更好理解了。
比如表示3+2,机器语言可能是10111100 00000011 00000010。
而汇编就可以写成add 3, 2。
add表示加,后面是两个数字。
这样只要懂一点英文单词,就能够明白这个语句的意思。
汇编语言就是将以前机器语言的命令,用一些简单的英文单词来表示,这样不仅很直观,对编程人员的要求也大大降低了。
但是用汇编语言写的程序不能直接在计算机上运行的,需要经过编译器,把汇编语言转换成机器语言。
所以科学家们创造了一个接近人类语言习惯的编程语言——高级语言。


高级语言

高级语言的表达方式和人类语言的表达方式很接近了,而且也没有那么多的英文单词需要去记了。
高级语言的种类有很多C、C++、Python、Java等等。

每种高级语言都至少有一个编译器,编译器就是把对应的语言转换成机器语言。 迄今为止,编程语言发展最高的是高级语言。
也许过几年、几十年,说不定有更好的语言出现,我们也期待有更好的语言出现。

那么为什么要有那么多的编程语言呢?


1、应用领域不同,导致需要不同的编译效率和代码质量以及执行速度的要求。

2、使用的领域不同,导致侧重点不同。
比如:PHP是面对应用领域的开发语言,要求快速看到效果,就不太在乎比C语言多损耗了点编译性能和多集成一些库了。
所以,它最大特点就是:把N多常用的库都集成进来了,用起来就简单的多。
但这并不能说明PHP就比C语言好,只是对开发者友好而已,只是他们用的领域不同。


3、开发时间决定

比如:PHP重要的是应用,应该在短时间内开发出应用,那就不能从头到尾的写,否则内容太多。

所以学习什么和实际怎么使用之间还有一个筛选的过程。


4、体验度、友好性决定

C语言编程经常会被报告指针不能读和写!
PHP,不会动不动弹出指针错误的那种恐怖窗口,因为它做了很多包容性好的异常处理。

但这并不能说明PHP就比C语言好,也不能说明C语言比PHP好。在他们各自擅长的领域,他们比谁都好。

每门语言因为自己定位在不同的应用领域,所以它的编译器,即使语法功能没做得那么智能和强大,也不会去升级,否则就失去了它的应用定位。


其实这么多的语言,编程思想上没什么区别。只要掌握编程思想,一切语言都通了。


作者:大雄

来源:老九学堂


免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

21ic电子网

扫描二维码,关注更多精彩内容

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

与 BigCode 社区共同创建的 StarCoder2 是在 600 多种编程语言上训练而成,它将推进代码生成、透明度、治理和创新

关键字: 生成式 AI 编程语言 大语言模型

Java是一种广泛应用于软件开发的编程语言,它具有跨平台、面向对象和高度可靠性的特点。在嵌入式系统设计中,Java也有着广泛的应用方案。本文将详细介绍Java在嵌入式系统设计中的应用方案,并分析其优势和挑战。

关键字: Java 软件开发 编程语言

嵌入式开发和Java开发是两个不同的领域,它们在目标、应用场景、编程语言和开发环境等方面存在一些区别。下面我将为您简要介绍这两个领域的特点以及如何选择适合您的开发方向。

关键字: 嵌入式开发 Java开发 编程语言

Java语言是一种面向对象的编程语言,由Sun Microsystems(现在是Oracle Corporation)于1995年推出。Java具有跨平台性和可移植性的特点,广泛用于开发各种应用程序,包括嵌入式系统、移动...

关键字: Java 编程语言 互联网

嵌入式系统是一种专门设计用于特定应用领域的计算机系统,它通常由硬件和软件组成,并且被嵌入到其他设备或系统中,以实现特定的功能。在开发嵌入式系统时,除了了解和选择适合的编程语言外,还需要了解如何测量嵌入式产品的应用性能以及...

关键字: 嵌入式 计算机 编程语言

嵌入式系统设计师是一个专业领域,需要深入理解和掌握各种嵌入式技术以及相关编程语言。本文将介绍嵌入式系统设计师考试中的必备知识、笔记和总结,帮助读者在考试中取得好成绩。

关键字: 嵌入式系统 编程语言 C语言基础

另外,有时候优先级还与C语言编译器有关,同一个表达式在不同的平台上,可能表达的意义是不同的。所以,为了代码的可植移性、正确性以及可读性,振南强烈建议多用一些()。

关键字: C 语言 编程语言 赋值操作

Matlab是matrix laboratory的组合,意为矩阵实验室,软件主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。

关键字: matlab 编程语言 数值分析

PLC梯形图编程的主要要素包括输入、输出和逻辑元件。其中,输入和输出指的是PLC系统与物理世界之间的接口,如传感器和执行器;逻辑元件则用于描述输入和输出之间的逻辑关系。

关键字: PLC 梯形图 编程语言

PLC在电气工程及其自动化技术设计中经常用到,那么作完硬件组态后,就要考虑编程了,不同的个体对于编程采用的语言是不同的,当然针对不同的工艺要求,用不同的编程语言也会有不同的效果

关键字: PLC 编程语言 梯形图
关闭
关闭