浅谈计算机和编程语言的发展历史

Posted kwan-c

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅谈计算机和编程语言的发展历史相关的知识,希望对你有一定的参考价值。

计算机、操作系统和编程语言

一、计算机的发展历史

??在第二次世界大战中,美国政府寻求计算机以开发潜在的战略价值。这促进了计算机的研究与发展。1944年霍华德·艾肯研制出全电子计算器,为美国海军绘制弹道图。这台简称 Mark Ⅰ 的机器有半个足球场大,内含500英里的电线,使用电磁信号来移动机械部件,速度很慢(3~5秒才能计算1次),并且适应性很差,只用于专门的领域,但是它既可以执行基本算术运算也可以运算一些复杂的等式。

??1946年,2月14日,由美国军方定制的世界上第一台电子计算机——“电子数字积分计算机”(ENIAC Electronic Numerical And Calculator)在美国宾夕法尼亚大学问世。ENIAC是美国奥伯丁武器试验场为了满足计算弹道需要而研制成的,这台计算器使用了17840支电子管,大小为80英尺 x 8英尺,重达28吨,功耗为170kW,其运行速度——每秒可进行5000次的加法运算,造价约为487000美元。

技术图片

1、第1代:电子管数字机(1946—1958年)

(1)硬件方面,逻辑元件采用的是真空电子管,主存储器采用汞延迟线电子管数字计算机、阴极射线示波管静电存储器、磁鼓、磁芯;外存储器采用的是磁带。软件方面采用的是机器语言、汇编语言。应用领域以军事和科学计算为主。

(2)特点是体积大、功耗高、可靠性差。速度慢(一般为每秒数千次至数万次)、价格昂贵,但为以后的计算机发展奠定了基础。

2、第2代:晶体管数字机(1958—1964年)

(1)应用领域以科学计算和事务处理为主,并开始进入工业控制领域。

(2)特点是体积缩小、能耗降低、可靠性提高、运算速度提高(一般为每秒数10万次,可高达300万次)、性能比第1代计算机有很大的提高。

3、第3代:集成电路数字机(1964—1970年)

(1)硬件方面,逻辑元件采用中、小规模集成电路(MSI、SSI),主存储器仍采用磁芯。软件方面出现了分时操作系统以及结构化、规模化程序设计方法。

(2)特点是速度更快(一般为每秒数百万次至数千万次),而且可靠性有了显著提高,价格进一步下降,产品走向了通用化、系列化和标准化等。应用领域开始进入文字处理和图形图像处理领域。

4、第4代:大规模集成电路机(1970年至今)

(1)硬件方面,逻辑元件采用大规模和超大规模集成电路(LSI和VLSI)。软件方面出现了数据库管理系统、网络管理系统和面向对象语言等。

(2)特点是1971年世界上第一台微处理器在美国硅谷诞生,开创了微型计算机的新时代。应用领域从科学计

二、UNIX操作系统和C语言的由来

因为计算机的电路中所包含的信息都是来自电信号的,而且为了方便地区分输出的是高电压和低电压,早期的操作人员是通过带有孔的纸带将程序输入电脑进行编译(对纸条打点),点代表1或0,即二进制。后面出现了汇编语言,操作人员每人一个小册子(指令小册子),开发人员非常非常辛苦。

最早的二进制语言,示例:

1、0000,0000,000000010000 代表 LOAD A, 16   ## 表示将16存入A寄存器(可以将寄存器理解为内存或者硬盘)

2、0000,0001,000000000001 代表 LOAD B, 1    ## 表示将1存入B寄存器

3、0001,0001,000000010000 代表 STORE B, 16  ## 表示将16存入B寄存器

汇编语言示例:

技术图片

1、UNIX操作系统的产生

??20世纪60年代,贝尔实验室的研究员Ken Thompson(肯·汤普森)发明了B语言,并使用B编写了一个游戏——Space Travel,为了玩自己这个游戏,他背着老板找到了一台空闲的机器——PDP-7(机器编号),但是这台机器没有操作系统(Operating System 简称OS),于是Thompson着手为PDP-7开发OS,后来这个他将自己开发的这个OS命名为——UNIX

??1971年,Thompson的同事D.M.Ritchie(里奇),也很想玩Space Travel这个游戏,所以他决定跟Thompson合作,两人一起开发UNIX,他当时的主要工作是改进Thompson的B语言。

??最终,在1972年,改进后的B语言诞生了,即C语言,它命名取自BCPL(Base Combined Programming Language)的第二个字母(BCPL也是一门语言,B语言就是对BCPL进行改进而诞生的)。

汤普森(左)和里奇(右):

技术图片

2、编程语言的简要历史

C语言、C语言的起源、类似C语言的编程语言,简单总结如下:

1、CPL(Combined Programming Language) - 1963
### CPL是1963年剑桥大学发明的

2、BCPL(Base Combined Programming Language) - 1967
### 剑桥的Matin Richards 对CPL做了简化,推出了BCPL

3、B(B Programming Language) - 1969
### 贝尔实验室的Ken Thompson(肯·汤普森) 对BCPL又做了改进,设计出了简单的且接近硬件的B语言,用B语言写了第一个UNIX OS

3、C(C Programming Language) - 1972
### 贝尔实验室的Dennis MacAlistair Ritchie(D.M.Ritchie - DM里奇)在B的基础上设计出了C语言。C 保持了B的优点(精炼、接近硬件),又克服了他的缺点(过于简单,数据无类型)

4、C++(C plus plus Programming Language) - 1983
### 还是贝尔实验室的人,Bjarne Stroustrup(本贾尼·斯特劳斯特卢普) 在C语言的基础上推出了C++,它扩充和完善了C语言,特别是在面向对象编程方面。一定程度上克服了C语言编写大型程序时的不足。

5、Python - 1989
### 1989年的圣诞节期间,吉多·范罗苏姆(Gudio van Rossum,我们称他为“龟叔”)为了在阿姆斯特丹打发时间,决心开发一个新的解释程序,作为ABC语言的继承,他创造了Python语言,并用C语言写出了Python语言的解释器CPython。之所以选择Python作为这么程序语言的名字,是因为龟叔是BBC电视剧——Monty Python's Flying Circus的粉丝。

6、Java(Java Programming Language) - 1995
### Sun公司的Patrick Naughton的工作小组研发了Java语言,主要成员是James Gosling(詹姆斯·高斯林)

7、C#(C Sharp Programming Language) - 2000
### Microsoft公司的Anders Hejlsberg(安德斯·海尔斯伯格)发明了C#,他也是Delphi语言之父。

以上是关于浅谈计算机和编程语言的发展历史的主要内容,如果未能解决你的问题,请参考以下文章

浅谈语言的发展历史及未来发展

Linux网络编程浅谈 C/S 和 B/S 架构

浅谈编译原理

浅谈汇编器编译器和解释器 | Linux 中国

浅谈编程语言

浅谈汇编器编译器和解释器