计算机程序设计语言的历史与未来
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机程序设计语言的历
史与未来
目录
引言 (1)
一.计算机程序设计语言 (2)
1.计算机程序设计语言的演变 (2)
(1)计算机程序设计语言的历史 (2)
(2).对计算机程序设计语言学习方法之我见 (6)
引言
摘要:“要盖高楼,打基础花的时间就要长,所以我们更重视基础。按照这样的思路培养出来的学生具有更强的创新潜力和更为广泛的适应性。”清华大学理学院副院长白峰杉说。“随着整个社会经济的发展,本科教育在整个教育体系中的定位发生了变化,本科阶段主要是打基础。同时,社会的发展对复合型文科人才的需求在增长,因此我们的本科培养模式必须随之作出调整和改变。”人文学院副院长张勇如是说。
清华在本世纪之初提出了全面落实通识教育基础上的宽口径专业教育,实施按大类招生和大类培养,自2001级起全部实施新培养方案与指导性教学计划,调整了各类课程的学分比例,搭建人文素养与科学精神并重的基础教育平台,强化人文教育与科学教育的融合,进一步拓宽专业基础,加强学科交叉,强调实践与研究融入教学过程。新的本科人才培养方案将本科教育总学分由200左右调整至170左右。新培养方案强调必修学分而不是必修课程,学生可在教学计划之外、培养方案框架之内选课,在导师的指导下,为自己量身定做“个人学习计划”。
可供学生选择的校级精品课达到105门,涉及公共基础课、学科基础课和专业基础课,以及文化素质课、实践类课程等,覆盖本科培养方案的多个方面。在以精品带动课程建设的过程中,清华还十分注重特色课程的培育与建设,实行以研究型教学方式为重点,以小班授课、师生互动为特点的课程改革。继2003年在全国率先开设新生研讨课之后,今年3月,清华又在全国首开面向全校本科生的实验室科研探究课。目前学校累计开设研讨类课程约350门次,约5000名本科生选修。
从目前来看,新的培养方案初见成效。学生的学习自主性相对增加,大部分学生选修的学分超过了规定的170学分,在200学分以上。该校副教务长康飞宇表示,通过这些课程,使本科生尽早形成开阔的科学视野和跨学科、跨院系、跨专业的大气的思维方式,为学生进入宽口径的专业培养打下通识基础。
计算机导论作为一门基础课程自然不容小觑,而学习计算机导论最终的目的还是为了计算机编程,而计算机编程的核心就是计算机编程语言。因此我们要从根源了解计算机程序设计语言,从而使它发展。
关键词:计算机程序设计语言、历史、发展。
一.计算机程序设计语言
1.计算机程序设计语言的演变
(1)计算机程序设计语言的历史
对于计算机,只能使用计算机语言对其编写程序。而所谓计算机语言是指编程时,根据事先定义的语法而写出的预定语句的集合。计算机语言的发展总结来说是从机器语言演化到高级语言。
在计算机发展早期,机器语言是唯一程序设计语言(如图1所示)。
图1
这种语言由“0”和“1”的字符串组成,这也是计算机唯一识别的语言。虽然这种语言编写的程序真实地表示计算机操纵数据的方法,但是它依赖着计算机。如果使用不同硬件,那么就需要不同的机器语言。其次,这种语言编写程序非常乏味且难以找出错误,由此造成编程人员在设计某些大型程序时的工作量较大。
机器语言时代称为第一代编程语言,这一计算机语言让人们看到利用计算机创造方便的巨大潜力。
接下来编程语言伴随着用带符号或助记符的指令和地址代替二进制代码发生演化,因为它们使用符号的特点,所以首先被称为符号语言。这些助记符语言后来被称为汇编语言(如表1所示)
表1 两整数相加的汇编语言代码
汇编语言的优点是可以表达非常底层的东西。利用它可以直接存取寄存器和I/O ,编写的代码可以非常精确地被执行,可以编写出比一般编译系统高效的代码,还可以作为不同语言或不同标准的接口。而缺点在于同时它还是一个非常低级的语言,非常冗长单调,在DOS 下编程时就可以体会到,易出BUG,且调试困难,这点和机器语言一样,有称为汇编程序的特殊程序将汇编语言代码翻译称机器语言。汇编语言的代码不易维护且兼容性不好,与硬件关系非常紧密。
为了提高程序员工作效率以及节省精力,导致高级语言(如图2所示)的发展。
图2
高级语言应用非常广泛,它的设计目标是使程序员摆脱汇编语言繁琐的细节。且它有一个与汇编语言的共性:它们必须被转化为机器语言,这个转化的过程称为解释或编译。
很多年来,各种各样的语言被开发,其中属BASIC、COBOL、Pscal、Ada、C、C++和Java 最著名。
虽然演化的理由不一样,但是演化的方向却是一致的,就是向着程序设计的简化、便利化发展,如何将人的设计目的通过最短最准确的计算机程序设计语言传达给计算机是一直以来计算机发展的核心问题。
如今,计算机按照它们解决问题的方法来分类,一共有四种模式:过程式(强制性)、面向对象、函数式和说明式。
过程式模式(强制性模式)(概念如图3所示)
图3
中,程序被看作被动对象的活动主体,该主体使用数据或数据项的被动对象,使一个被动
的对象本身虽然不能开始一个动作却能从活动主体接收动作。这种模式的程序由三部分构成:对象创建部分、一组过程调用和每个过程的一组代码。
FORTRAN、COBOL、Pascal、C和Ada就是过去几十年发展起来的一些高级强调性(过程性)语言
FORTRAN于1957年投入商业所用,是第一代高级语言,并且经历了多个版本:FORTRAN、FORTRAN Ⅱ、FORTRAN Ⅳ、FORTRAN 77、FORTRAN99和HPF(高性能FORTRAN用于高速多处理器计算机系统)。这种高级语言所具备的高精度算法、处理复杂数据能力和指数运算(a^b)使得40年后它还是科学或工程应用中的理想语言。
COBOL有一个特定的设计目标:作为商业编程语言使用。商业程序程序设计要求快速访问文件和数据库、快速更新文件和数据库、生成大量报表和界面友好的格式化的输出。
Pascal的设计思想有一个独到之处:通过强调结构化编程方法来教初学者编程。尽管它成为学术中最流行的语言,但从未在工业中达到同等流行的程度。
C语言最初用于编写操作系统和系统软件(如UNIX)。后来由于它一些特点:有一个结构化的高级编程语言应有的所有高级指令,使程序员无需知道硬件细节、具有一些低级指令,使得程序员能够直接快速地访问硬件,更接近汇编语言且是非常有效的语言,指令短,使它称为程序员中流行的语言。
最后,Ada是DoD和工业的流行语言,它有其他过程式语言那样的高级指令、有允许实时处理的指令,从而便于过程控制、具有并行处理能力,可以在具有多处理器的主机上运行。
面向对象模式(概念如图4所示)处理活动对象,而不是处理被动对象。
在面向对象模式中的文件能把所有被文件执行的过程(在面向对象模式中称为方法)打包在一起