- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DCBANK与UPS的 比较
C语言发展史
1、第一个编程语言比现代的计算机还早诞生。首先,这种语言是种编码(en:code)。于1801年发明的提花织布机(或称甲卡提花织布机,英文:en:Jacquard loom),运用打孔卡上的坑洞来代表缝纫织布机的手臂动作,以便自动化产生装饰的图案。
Ada Lovelace在1842年至1843年间花费了九个月,将意大利数学家Luigi Menabrea关于查尔斯·巴贝奇新发表机器分析机的回忆录翻译完成。她于那篇文章后面附加了一个用分析机计算伯努利数方法的细节,被部分历史学家认为是世界上第一个电脑程序。
Herman Hollerith在观察列车长对乘客票根在特定位置打洞的方式后,意识到他可以把资讯编码记载到打孔卡上,随后根据这项发现使用打孔卡来编码并纪录1890年的人口统计资料。
第一个计算机程式码是针对他们的应用面设计的。在20世纪的前十年主要是用十进制来算数,后来人们发现不只是用文字,也可以用数字来表现逻辑。举例来说,阿隆佐·邱奇曾以公式化(formulaic)的方式表达λ演算。图灵机是一种纸带标记(tape-marking)机器(就像电话公司用的那种)操作方法抽象化后的集合。图灵机这种透过有限数字(finite number)呈现机器的方式,奠定了程式如同冯·诺伊曼结构计算机中的资料一样地储存的基础。但不同于λ演算,图灵机的程式码并没有办法成为高阶编程语言的基石,这是是因为它主要的用途是分析算法的复杂度。
就像许多历史上的第一次一样,第一个现代编程语言也很难界定。最一开始是因为硬件限制而限定了语言,打孔卡允许80行(column)的长度,但某几行必须用来记录卡片的顺序。FORTRAN则纳入了一些与英文字词相同的关键字,像是IF、GOTO(原字词为go to),以及CONTINUE。之后采用磁鼓(magnetic drum)作为内存使用,也代表计算机程式也必须插入(interleave)到磁鼓的转动(rotation)中。和现今比较起来,这也让编程语言必须更加依赖硬件(hardware-dependent)。
对部分的人认为必须在编程语言的状态确立之前,根据能力(power)以及可读性(human-readability)的程度来决定历史上第一个编程语言是什么语言。提花织布机和查尔斯·巴贝奇所制作的差分机(en:Difference Engine)都具备在大量限制下,简单描述机器应执行行为的语言。也有种并非设计给人类运用的受限特定领域语言(en:domain-specific language),是将打孔卡运用到自动演奏钢琴(en:player piano)上。
2、ALGOL ,为“算法语言”(ALGOrithmic Language)的缩写,是计算机发展史上首批产生的高级程式语言家族。ALGOL语言并没有被广泛的使用,但它是许多现代程序语言的概念基础。
Algol 58:1958年,ACM小组和以当时联邦德国的应用数学和力学协会GAMM在苏黎世把他们关于算法表示法的建议综合为一,形成了Algol 58,先被命名为IAL(国际代语言,International Algebraic Language),后来改称Algol 58。
Algol 60:1960年1月,图灵奖获得者:艾伦·佩利在巴黎举行的有全世界一流软件专家参加的讨论会上,发表了算法语言Algol 60报告,确定了程序设计语言Algol 60。Algol60语言的第一个编译器由艾兹赫尔·戴克斯特拉来实现。1962年,艾伦。佩利又对Algol 60进行了修正。
Algol 60引进了许多新的概念如:局部性概念、动态、递归、巴科斯-诺尔范式BNF(Backus-Naur Form)等等。Algol 60是程序设计语言发展史上的一个里程碑,它标志着程序设计语言成为一门独立的科学学科,并为后来软件自动化及软件可靠性的发展奠定了基础。
Algol 68:Algol W:1966年,IFIP吸收尼克劳斯·维尔特参加对Algol语言进行完善与扩充的工作小组。沃思参加进去以后,提交了一份建议书并由东尼·霍尔等人修改、完善以后形成Algol W。Algol 68一些较少被使用到的语言功能(如同步与并列区块)、语法捷径的复杂系统,以及型态自动强制转换(coercions),使得实作者兴趣缺缺,也让Algol 68获得了很难用(diffcult)的名声。尼克劳斯·维尔特就干脆离开该设计委员会,另外在开发出更简单的Pascal语言。
CPL(英语:Combined Programming Language,原名Cambridge Programming Language)在1963年,由英国的剑桥大学和伦敦大学首先开发出来。CPL语言在ALGOL 60的基础上更接近
原创力文档


文档评论(0)