汇编语言
1949 年,EDSAC 的诞生标志着第一批可编程计算机的出现。那时候编程的方式是把指令和数据打在穿孔卡片或纸上,然后输入到计算机内存中执行。修改起来非常困难。
20世纪50年代出现了汇编语言,可以用有意义的单词来表示指令(比如 ADD 为 5),使用名字来指定内存位置(比如 SUM 为 14)。这样添加和修改程序就方便多了。但不同 cpu 能执行的汇编程序是不同的,所以要把一个汇编程序放在另外一个 cpu 上运行,就相当于重写一遍。
高级语言
20 世纪 50 年代末 60 年代初,计算机在代替人类程序员做很多事方面又前进了一大步,也是人类编程历史上最重要的进步。那就是独立于任何 cpu 体系结构的高级语言面世了。
高级语言更接近人类的语言。通过一个翻译器,把代码翻译成目标 cpu 能处理的汇编语言指令,这个翻译器叫做编译器。编译器可能会分为一个前端和多个后端,前端将编程语言转换成一个中间形式,多个后端把中间形式转换为不同体系结构的汇编指令。
1958 年,Fortran 由 John Backus 在 IBM 领导的一个小组开发。Fortran 的全名是 formula translate,在科学和工程计算领域很成功,目前仍然有人在用,很多科学家和工程师学的第一门语言就是它。
Cobol (Common Business Oriented Language) 很适合处理库存管理、开发票、做薪资方面的运算。
BASIC (Beginner’s all-purpose symbolic instruction code),1964 年由 John Kemeny 和 Tom Kurtz 在达特茅斯开发出来的。 是给初学者开发的语言,对电脑配置要求低,语法简单,至今 Microsoft Visual Basic 还在维护。
这三门语言的成功,是因为它们专注于某一个特定领域,避免大而全的定位。
20 世纪 70年代出现了专门为“系统编程”开发的语言,所谓系统编程就是给编写程序员使用的工具,比如汇编器、编译器、文本编辑工具乃至操作系统。这些语言中最成功的是 c,由 Dennis Ritchie 于 1973 年在贝尔实验室开发,至今变化很小。
20 世纪 80 年代,为了应对大型程序开发过程中的复杂性,贝尔实验室的 Bjarne Stroustrup 开发了 c++。c++ 由 c 发展而来,与 c 很像。大多时候,c 语言也可以看做是 c++ 语言,反过来就不是了。目前计算机中使用的大部分软件都是 c 或者 c++ 写的。
20 世纪 90 年代,随着因特网和万维网的发展,更多的语言被发明出来。计算机处理器速度加快,内存容量增大,所以编程效率比机器效率更重要,诸如 java 和 JavaScript 这样的语言有意做了折中处理。
20 世纪 90 年代,James Gosling 在 Sun MicroSystems 公司开发了 Java。最初的目标是小型嵌入式系统,如家用电器和电子设备中的系统,它们更注重灵活性而非速度。Java 的目标后来变成了在网页中运行,不过没有成功。但 Java 被广泛的用在服务器端。
1995 年,JavaScript 由 Brendan Eich 在网景公司开发。JavaScript 也算 c 衍生语言的一员,但与 c 的差别很大。JavaScript 和 Java 除了在名字上一样,本身没有任何相同点。JavaScript 是为了在网页上动态显示内容而发明的,现在基本每个网页中都会运行 JavaScript。JavaScript是所有语言中最容易实验的。它本身也简单。不需要下载编译器,每个浏览器都内置了一个。
编程语言未来的方向
两个方向:
- 使用更多的计算机资源让编程更容易
- 开发对程序员来说更安全的语言
网友评论