- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
最早的一代程序设计语言是机器语言;第二代语言是汇编语言;
第三代语言是所谓的高
级语言,它主要有四种范型:命令式语言、函数式语言、逻辑式语言与对象式语言;第四代语
言是面向数据库的,实际上它不只是语言而且也是交互式程序设计环境。程序设计语言的发
展主要经历了这四代,也有人把逻辑式语言、函数式语言,甚至于对象式语言称为第五代语
言。这五代语言中,前三代语言的发展有明确的先后界限,而后三代语言之间则没有这些界
限,它们仍然在同时发展。
一、一、史前史前时期
我们先来回顾一下计算机问世以前人们为程序设计语言的问世与发展所做的工作。
最早的最早的计算机计算机是我们中国的算盘,它被人们沿用了不知多少个世纪。在17世纪Pasca
l等人发明了一种以传动齿轮为基础的等人发明了一种以传动齿轮为基础的计算机计算机它用齿轮的转动来控制计算的累加与进位
。上个世纪初,英国剑桥大学著名数学家CharlesBabbage的工作使他成了计算机领域的先
驱;他于1822年与1848年分别设计出了两种差分机,并于1833年制造出了有名的分析机。分
析机在原理上与当今意义上的计算机很类似:其主要作用是输入读进穿孔卡片、对输入执行
算术运算并给出结果,它可以随意重复运算序列。这些运算序列是由AdaLovelace设计的,
她设计了许多可以求解一大类问题的运算序列。这种运算序列实际上就是程序的雏形,其思
想一直沿用至今,因而Ada被称为是世界上第一个程序员(Ada语言就是为纪念她而命名)。1
890年Hollerith研制出了一种统计机,它也使用穿孔卡片,它被用作各种统计工作。Holler
ith因此而成立了一个公司,这个公司以后发展成IBM。本世纪30年代,英国数学家Turing提
出了图灵机的概念,它由一个控制块、一条存储带及一个读写头构成,能执行左移、右移、
在存储带中清除或写入符号、条件转移等操作。图灵机的结构虽然比较简单,但却能完成当
今计算机所能完成的一切运算。随后Church发明了一种以逻辑公式中约束变量的代入为主
要运算的λ-演算,它可以看作是一种语法与语义都非常简单的程序设计语言,已被广泛用在
程序理论与程序设计语言理论与实践的研究中。
二、低级语言时期
1944年,美国哈佛大学的Aiken设计出了MARKI自动程序控制继电器式计算机,它使用了
Babbage分析机的原理,这是世界上第一代自动计算机,其机械结构原理与当代计算机基本相
同,只是速度很慢:加法每秒才3次。1944~1946年间宾夕法尼亚大学的Mauchly与Eckert研
制出了ENIAC电子数字积分计算机。1949年,普林斯顿大学vonNeumann研制出了EDVAC电子
离散变量计算机,这是世界上第一台能把可执行的程序放在磁芯中的计算机,从此现代意义
上的计算机便真正诞生了,这台计算机一问世便奠定了所谓vonNeumann式体系结构:程序与
数据不加区别地存储在(磁芯)存储器中。它所能处理的最基本的信息单位就是二进制数字
,即计算机只能识别理解由0与1构成的二进制序列。那时人们要用二进制机器代码编成代码
序列(即程序)来控制计算机执行规定的操作。这种代码就是第一代程序设计语言或称机器
语言。机器语言的特点是它能直接反映计算机的硬件结构,用之编写的程序不须作任何处理
即可直接输入计算机执行。编写机器语言程序是一种非常枯燥而繁琐的工作,要记住每一条
指令的编码与含义极端困难,编写出的程序既不易阅读也不易于修改。而且由于机器语言是
特定于机器的,不同的机器有不同的指令系统,人们无法把为一种机器编写的程序直接搬到
另一种机器上运行。一个问题如果要在多种机器上求解,那么就要对同一问题重复编写多个
应用程序。由于机器语言程序直观性差,与人们习惯使用的数学表达式及自然语言差距太
大,故而难学、难记,程序难以编写、调试、修改、移植和维护,限制了计算机的推广作用
。
由于这一问题的存在,人们设想,能不能用更接近于自然语言与数学语言的语言。经过
努力,第二代语言——汇编语言问世了。汇编语言也是一种面向机器的程序设计语言,
它用助记符号来表示机器指令的操作符与操作数(亦称运算符与运算对象),如,用用与与与
分别取代机器语言中的加法与
文档评论(0)