计算机语言的历史与发展.docx
- 文档编号:9611254
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:5
- 大小:22KB
计算机语言的历史与发展.docx
《计算机语言的历史与发展.docx》由会员分享,可在线阅读,更多相关《计算机语言的历史与发展.docx(5页珍藏版)》请在冰点文库上搜索。
计算机语言的历史与发展
计算机程序设计语言的发展和体会
学院:
信息学院
专业:
计算机科学与技术
学号:
20071060071
姓名:
施杨
目录
、计算机程序设计语言的发展背景
、计算机程序设计语言的发展历程
、计算机程序设计语言的发展前景
、对于计算机程序设计语言发展的体会
一、计算机程序设计语言的发展背景
计算机是由硬件和软件两大系统构成的,硬件是物质基础,而软件是计算机的灵魂。
没有软件,计算机就不能运行,而所有的软件都是由计算机语言编成的。
计算机语言的发展是一个不断演化的过程,它经历了从机器语言、汇编语言到高级语言的历程。
其根本的推动力就是抽象机制更高的要求,以及对程序设计思想的更好的支持。
具体的说,就是把机器能够理解的语言提升到也能够很好的模仿人类思考问题的形式。
计算机语言的演化从最开始的机器语言到汇编语言到各种结构化高级语言,最后到支持面向对象技术的面向对象语言。
当计算机刚刚问世的时候,程序员必须手动控制计算机。
当时的计算机十分昂贵,唯一想到利用程序设计语言来解决问题的人是德国工程师楚泽。
几十年后,计算机的价格大幅度下跌,而计算机程序也越来越复杂,开发时间已经远比运行时间来得宝贵。
于是,新的集成、可视的开发环境越来越流行。
只要轻敲几个键,一整段代码就可以使用了。
这也得益于可以重用的程序代码库。
随着c,pascal,fortran,等结构化高级语言的诞生,使程序员可以离开机器层次,在更抽象的层次上表达意图。
由此诞生的三种重要控制结构,以及一些基本数据类型都能够很好的开始让程序员以接近问题本质的方式去思考和描述问题。
随着程序规模的不断扩大,在60年代末期出现了软件危机,在当时的程序设计模型中都无法克服错误随着代码的扩大而级数般的扩大,以至到了无法控制的地步,这个时候就出现了一种新的思考程序设计方式和程序设计模型-----面向对象程序设计,由此也诞生了一批支持此技术的程序设计语言,比如eiffel,c++,java,这些语言都以新的观点去看待问题,即问题就是由各种不同属性的对象以及对象之间的消息传递构成。
面向对象语言由此必须支持新的程序设计技术,例如:
数据隐藏,数据抽象,用户定义类型,继承,多态等等。
二、计算机程序设计语言的发展历程
最初出现的计算机语言是“机器语言”,就是写出一串串由“0”和“1”组成的指令序列交由计算机执行。
二进制是计算机的语言的基础,计算机发明之初,使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。
而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。
但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中最高的。
后来人们为了减轻使用机器语言编程的痛苦,进行了一种有益的改进:
用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“ADD”代表加法,“MOV”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,于是就出现了汇编语言,即第二代计算机语言。
但是问题仍然存在,因为计算机是不认识这些符号的,所以就需要一个专门的程序,负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。
虽然汇编语言十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具。
人们从与计算机交流的痛苦经历中意识到,应该设计一种这样的语言,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。
经过努力,1954年,第一个完全脱离机器硬件的高级语言—FORTRAN问世了,40多年来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、C、PROLOG、Ada、C++、VC、VB、Delphi、JAVA等。
当然高级语言的发展也经历了从早期语言到结构化程序设计语言,从面向过程到非过程化程序语言的过程。
相应地,软件的开发也由最初的个体手工作坊式的封闭式生产,发展为产业化、流水线式的工业化生产。
60年代中后期,出现了“软件危机”。
软件越来越多,规模越来越大,因为缺乏科学规范的系统规划与测试、评估标准,所以建立起大批耗费巨资的软件系统,这些软件系统含有错误而无法使用,因此给人的感觉是越来越不可靠,以致几乎没有不出错的软件。
这时人们认识到大型程序的编制不同于写小程序,它应该是一项新的技术,应该像处理工程一样处理软件研制的全过程。
程序的设计应易于保证正确性,也便于验证正确性。
后来有人提出了“结构化程序设计方法”。
终于,第一个结构化程序设计语言—Pascal语言在1970年出现了,这标志着结构化程序设计时期的开始。
到了80年代初,在软件设计思想上,又产生了一次革命,其成果就是面向对象的程序设计。
在此之前的高级语言,几乎都是面向过程的,程序的执行是流水线似的,在一个模块被执行完成前,人们不能干别的事,也无法动态地改变程序的执行方向。
这和人们日常处理事物的方式是不一致的,对人而言是希望发生一件事就处理一件事,也就是说,不是面向过程,而应是面向具体的应用功能,也就是对象(oBject)。
其方法就是软件的集成化,如同硬件的集成电路一样,生产一些通用的、封装紧密的功能模块,称之为软件集成块,它与具体应用无关,但能相互组合,完成具体的应用功能,同时又能重复使用。
对使用者来说,只关心它的接口(输入量、输出量)及能实现的功能,至于如何实现的,那是它内部的事,使用者完全不用关心,C++、VB、Delphi就是典型代表。
高级语言的下一个发展目标是面向应用,也就是说:
只需要告诉程序你要干什么,程序就能自动生成算法,自动进行处理,这就是非过程化的程序语言。
三、计算机程序设计语言的发展前景
我们知道目前通用的编程语言有两种形式:
汇编语言和高级语言。
汇编语言的实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,更容易识别和记忆。
用汇编语言所能完成的操作不是一般高级语言所能实现的,而且源程序经汇编生成的可执行文件不仅比较小,而且执行速度很快。
高级语言是目前绝大多数编程者的选择。
和汇编语言相比,它不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存器等,这样就大大简化了程序中的指令。
同时,由于省略了很多细节,编程者也就不需要有太多的专业知识。
高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,如目前流行的vb、vc、foxpro、delphi等,这些语言的语法、命令格式都各不相同。
高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可将它们分为两类:
解释类和编译类。
计算机语言将从其简单性,面向对象,安全性,平台无关性等特性进行改革并发展。
尽量做到只需理解一些基本的概念,就可以用它编写出适合于各种情况的应用程序。
使程序可以方便地被移植到网络上的不同机器、不同平台。
实现模块化和信息隐藏,提供一类对象的原型,并且通过继承机制,让子类可以使用父类所提供的方法,实现了代码的复用。
网络、分布环境下有安全机制保证。
四、对于计算机程序设计语言发展的体会
用科学的逻辑思维方法认识事物才会清楚的了解其过去、现在和未来,计算机语言的发展同样遵循着科学技术发展的一般规律,以自然辩证法的观点来分析计算机语言,有助于我们更加深入地认识计算机语言发展的历史、现状和趋势,有了自然辩证法这把开启科学认识大门的钥匙,我们将回首过去、把握现在、放眼未来,正确地选择计算机语言发展的方向,更好的学习、利用和发展计算机语言。
参考书目:
1、《计算机语言与计算机程序发展历史》
2、《计算机发展史》
3、《软件发展与社会进步》
²
²
²
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机语言 历史 发展