C语言的发展历程

C语言的发展历程非常有趣,简单地讲,它最初是叫A语言,从A语言发展到了B语言,又从B语言发展到了现在C语言,当然,还有之后的C++之类C like语言。

A语言,全称是ALGOL(Algorithmic Language)语言,也就是算法语言的缩写,A语言可以算是高级程式语言的开山鼻祖。

1958年,ACM(Association for Computing Machinery,美国计算机协会)和GAMM(当时联邦德国的应用数学和力学协会)在苏黎世的联合会议上把它们关于算法表示法的建议合二为一,成为一种编程语言,并命名为IAL(International Algebraic Language,国际代数语言)。

会议结束后,它们成立了一个小组,将IAL改名为ALGOL,并根据会议的讨论结果,决定开发ALGOL的编译器。

1958年底,第一套编译器终于开发成功,按照年份命名为ALGOL 58;1960年,图灵奖的获得者艾伦·佩利(Alan J.Perlis)总结了ALGOL 58的开发经验后,再次召集参与ALGOL工作的计算机科学家们在巴黎举行了一场全世界一流软件专家的研讨会,发表了《算法语言ALGOL 60报告》,确定了程序设计语言ALGOL 60,1960年的夏天Edsger Wybe Dijkstra开发了第一个ALGOL 60的编译器,于是ALGOL系列语言正式踏足计算机编程领域,1962年,艾伦·佩利又对ALGOL 60进行了修正。ALGOL 60是程序设计语言发展史上具有重要意义的里程碑,它标志着程序设计语言成为一门独立的学科。

ALGOL 60是一种面向问题的高级语言,但是不适合用来编写系统程序,1960年英国剑桥大学推出了CPL(Combined Programming Language)语言,这种编程语言更接近硬件一些,但是规模太大,难以实现,所以1967年剑桥大学的 Matin Richards对CPL语言进行了简化,并命名为BCPL(Basic Combined Programming Language)语言,但是,就算是简化的BCPL语言还不能满足当时时代对计算机操作系统编程的要求,所以,1970年,美国贝尔实验室的肯·汤普逊(Ken·Thompson)将BCPL进一步简化,提炼出它的精华,并为它取名为B语言,B语言很简单而且很接近硬件,他和丹尼斯·里奇(Dennis Ritch)用B语言编写了第一个UNIX操作系统。

But,由于B语言过于简单,功能不完全,1972年到1973年间,贝尔实验室的丹尼斯·里奇(Dennis Ritch)在B语言的基础上设计了C语言,丹尼斯设计的初衷是为描述和实现UNIX操作系统提供一种工作语言,并将其作为程序员编程使用的一种工具,C语言保持了B语言精炼和接近硬件的有点,又克服了它过于简单和没有数据类型的缺点.1973年,肯·汤普逊(Ken·Thompson)和丹尼斯·里奇(Dennis Ritch)把UNIX操作系统的90%以上用C语言改写,原来的UNIX操作系统是1969年他们俩用汇编语言开发的,并且,为了推广UNIX操作系统,1977年丹尼斯·里奇(Dennis Ritch)发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》,因此,C语言的发展与UNIX操作系统相辅相成。

在后来的几年里,C语言发展迅速,1978年,C语言成为当时世界上流行最广泛的高级程序设计语言。C语言既有高级语言相对独立的优点,又具有汇编语言直接、快速的优点,不仅是一个成功的操作系统设计语言,还是一个实用的应用程序设计语言,就算是在当今众多的高级程序设计语言中,C语言也是学习编程的首选。

《C champion》C语言发展相关推荐

  1. 第1节:C语言发展及基本格式步骤

    一  C语言发展 1:1970年美国贝尔实验室的Ken Thompson以BCPL(Basic Combined Programming Language)语言为基础,设计出了很简单且很接近硬件的B语 ...

  2. java语言发展历史_Java编程语言的历史和未来

    java语言发展历史 通过AppDynamics解决应用程序问题的速度提高了10倍–以最小的开销在代码级深度监视生产应用程序. 开始免费试用! 作为互联网上著名的编程语言 ,Java对人们如何浏览数字 ...

  3. dream_c梦想标准化语言评估,孩子语言发展落后,诊断治疗需“量体裁衣”

    晨晨(化名)在1岁时能有意识的叫爸爸妈妈,1岁2个月能独立行走,但到2岁6个月时仍只会叫"爸爸妈妈".于是,一家人带着晨晨来到首儿所保健科就诊,经过<儿童神经心理发育量表&g ...

  4. Java语言发展简史

    Java语言发展简史 JAVA 语言历史近二十年, 已发展成为人类计算机史上影响深远的编程语言. JAVA 语言是一门非常纯粹的面向对象编程语言, 它吸收了 C++ 语言的各种优点, 又摒弃了 C++ ...

  5. Java语言发展概述

    目录 现代编程语言 发展历史 TIOBE编程语言排行 Java语言发展 Java语言的应用 Java语言的特点 参考资料 现代编程语言 发展历史 1950与1960年代 Fortran (1957年) ...

  6. ALGOL语言 发展历史

    一提到计算机高级语言,可能大家就会想到C语言.C++.Python.Java等等.ALGOL语言可能很多人都没有听说过. 但这个现在已经销声匿迹的语言却是C语言.C++.Java等高级语言的直接鼻祖, ...

  7. JAVA语言发展介绍【尚学堂java300集视频学习笔记】

    Java发展简史 1991年,James Gosling在SUN公司的工程师小组想要设计这样一种小型计算机语言.该语言主要用于像电视盒这样的消费类电子产品.另外,由于不同的厂商选择不同的CPU和操作系 ...

  8. html5发展现状调查问卷,《小班语言发展现状调查问卷分析报告》

    小班语言发展现状调查问卷分析报告 语言是一种社会现象,具有交际性和工具性.正如柏拉图所说的那样,语言是教育的工具,是幼儿认识世界的工具.语言对幼儿的德.智.体.美.劳全面发展教育有着重要的作用.语言能 ...

  9. pg怎么判断视图是否存在_一张表帮你判断孩子语言发展是否存在问题,速速收藏...

    孩子说话晚,口齿不清,表达能力弱怎么办? 家长应该怎么做些什么促进孩子语言能力的发展呢? 近期,央视少儿"银河教育 七巧板育儿专家直播间"请到了享国务院特殊津贴专家.湖北省妇幼保健 ...

最新文章

  1. CSipSimple 工程分析 1
  2. Python爬取考研数据:所有985高校、六成211高校均可调剂
  3. NLPIR 分词准确率接近98.23%
  4. Ie html button消失,input 按钮在IE下兼容问题
  5. java hashmapconcurrentHashmap源理
  6. php+curlmultiinit_多线程 - PHP的curl_multi_init并发测试问题
  7. matlab 柴油机仿真,用MATLAB/SIMULINK实现柴油机及其控制系统的动态仿真
  8. MyBatis-Plus_实体作为条件构造器构造方法的参数
  9. mysql怎么插入10w测试数据_mysql快速插入100万测试数据
  10. 2.1依赖概念之前的预备--war、jar包内部结构
  11. js练习8(幻灯片切换效果)
  12. ios 7.1.2 拍照声音
  13. android 系统dialog的应用
  14. Redux的学习笔记-(一)(B站学习笔记)
  15. 在英文邮件中,如何在开头对收件人进行称呼?
  16. 徐姗姗 20190905-3 命令行和控制台编程
  17. 考Java二级要不要背方法英文_考英语二级有什么技巧吗?
  18. Linux网络容灾,一个简单的两个Linux之间的容灾备份的Demo
  19. FPGA(二)串口通信
  20. DSP 中的基础算法和模型的详细解析

热门文章

  1. 全世界还有44亿人无法上网
  2. 各类编程语言视频教程(300G)
  3. 如何安装php网站,如何安装部署PHP网站
  4. osgi框架和spring区别_最全153道Spring全家桶面试题,你都知道哪些?(含答案解析)...
  5. 记录webpack的source map使用详细说明
  6. Java黑皮书课后题第6章:*6.15(金融应用:打印税表)程序清单3-5给出了计算税款的程序。使用下面的方法体编写一个计算税款的方法。使用这个方法编写程序,打印可征税人从50000到60000间隔
  7. pyqt 子窗口控制主窗口绘图_实战PyQt5: 005-主窗口QMainWindow
  8. java数据分析平台源码_DataGear数据可视化分析平台 v2.0.0
  9. c++stl应用入门
  10. linux命令(8)wc