阿T课堂开播啦!这里只有干货干锅,没有水坑没有套路!
计算机编程语言的发展,也是随着计算机本身发展而发展。人类不断的提高科技的同时,也必须使工具的使用越来越简化,从而提高整个社会效率,这其中也包括要求计算机语言接近人类的思维方式来编程。
第一代语言:机器语言
机器语言由数字组成所有指令。而第一代机器语音可以直接被cpu直接使用,由0和1组成,但对于人类来说,机器语言过于繁琐,难于维护更新,特别是大规模编码。如以下指令翻译成汇编:
1.,,代表LOADA,16
2.,,代表LOADB,1
3.,,代表STOREB,16
这种极简的信息理论最早由香农所提出,即比特,他认为一切信息一切答案都能用0和1组成的比特来体现。
第二代语言:汇编语言
为了编程的方便,以及更大规模的软件工程。人类开始改进机器语言,使用英文缩写的助记符来表示基本的计算机操作。这些助记符构成了汇编语言的基础。相比高级语言,这是最接近机器机底层的语言,广泛应用在硬件操作,驱动程序、嵌入式操作系统和实时运行程序。与面向对象相反,汇编面向处理器的程序设计语言。
第三代:高级语言
对于简单的任务,汇编语言可以胜任。但是随着计算机的发展,渗透到了工作生活的更多的方面,一些复杂的任务出现了,汇编语言就显得力不从心(应该说是程序员使用汇编语言解决复杂问题出现了瓶颈)。于是,出现了高级语言。像我们熟知的C、C++、Java等等都是高级语言。
高级语言允许程序员使用接近人类语言的指令来编写程序。例如,实现一个简单的任务:A+B=C,使用机器语言、汇编语言和高级语言的的实现如下图1-2所示.
从上面这个简单的加法计算,可以看出越到高级语言,越接近人的思维,人使用起来就越方便。
高级语言的出现,尤其是面向对象语言的出现,对于提高开发效率和可维护性做出了重要贡献,将来的主要编程语音还是会以高级语言的面向过程,面向对象,甚至面向领域,面向金钱开发为主。
编程语言简史
–RegionalAssemblyLanguage
–Autocode
–IPL(LISP语言的祖先)
–FLOW-MATIC(COBOL语言的祖先)
–FORTRAN(第一个编译型语言)
–COMTRAN(COBOL语言的祖先)
–LISP
–ALGOL58
–FACT(COBOL语言的祖先)
–COBOL
–RPG
–APL
–Simula
–SNOBOL
–CPL(C语言的祖先)
–BASIC
–PL/I
–JOSS
–BCPL(C语言的祖先)
–Logo
–B(C语言的祖先)
–Pascal
–Forth
–C
–Smalltalk
–Prolog
–ML
–Scheme
–SQL
–C++(既有类的C语言,更名于年7月)
–Ada
–CommonLisp
–MATLAB
–Eiffel
–Objective-C
–Erlang
–Perl
–Tcl
–Mathematica
–FL
–Haskell
–Python
–VisualBasic
–Ruby
–Lua
–CLOS(ANSICommonLisp的一部分)
–Java
–Delphi(ObjectPascal)
–PHP
–WebDNA
–Rebol
–D
–Action
–C#
–VisualBasic.NET
–F#
–Groovy
–Scala
–Clojure
–Go
–Dart