谷动谷力

标题: C语言基础教程——前世今世 [打印本页]

作者: fannifu    时间: 2018-7-6 23:51
标题: C语言基础教程——前世今世
本帖最后由 sunsili 于 2024-4-3 17:50 编辑

C语言基础教程——前世今世




最初有了计算机,是机器语言(全部是0和1往机器里敲)开发的,后来大神们发现0和1组成的代码,不好记忆,就用助记符代替0和1的机器,这就是汇编语言。汇编发明后,方便了记忆,但对编程人员要求相当之高啊,要非常了解CPU指令集、寻址方式、寄存器组等计算机与接口的知识,不是一般人能写的,笔者大学时学习了8086计算机组成及汇编语言,学了之后就不知道可以用来做什么,发现学这个是做什么用的,后来学习了单片机,还有自己动手写操作系统,才知道,只有开发性能低的MCU(用高级语言开发编译出来无法执行,因为系统资源———内在不足,存储空间不足、溢栈),系统调度,分配向量,内存管理等高级语言无法实现时才会用到汇编语言,如果用它来开发一个windows应用程序,根本不可能。

       C语言之所以命名为C,是因为 C语言源自Ken Thompson发明的B语言,而 B语言则源自BCPL语言。

      1967年,剑桥大学的Martin Richards对CPL语言进行了简化,于是产生了BCPL(Basic Combined Programming Language)语言。

        20世纪60年代,美国AT&T公司贝尔实验室(AT&T Bell Laboratory)的研究员KenThompson闲来无事,手痒难耐,想玩一个他自己编的,模拟在太阳系航行的电子游戏——Space Travel。他背着老板,找到了台空闲的机器——PDP-7。但这台机器没有操作系统,而游戏必须使用操作系统的一些功能,于是他着手为PDP-7开发操作系统。后来,这个操作系统被命名为——UNIX。

         1970年,美国贝尔实验室的Ken Thompson,以BCPL语言为基础,设计出很简单且很接近硬件的B语言(取BCPL的首字母)。并且他用B语言写了第一个UNIX操作系统。

1971年,同样酷爱Space Travel的Dennis M.Ritchie为了能早点儿玩上游戏,加入了Thompson的开发项目,合作开发UNIX。他的主要工作是改造B语言,使其更成熟。 。B语言,精练,大大提高了编程效,但它是有缺点的,过于简单,数据无类型。

1972年,美国贝尔实验室的 D.M.Ritchie 在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。

1973年初,C语言的主体完成。Thompson和Ritchie迫不及待地开始用它完全重写了UNIX。此时,编程的乐趣使他们已经完全忘记了那个"Space Travel",一门心思地投入到了UNIX和C语言的开发中。随着UNIX的发展,C语言自身也在不断地完善。直到今天,各种版本的UNIX内核和周边工具仍然使用C语言作为最主要的开发语言,其中还有不少继承Thompson和Ritchie之手的代码。

1975年UNIX第6版发布,C优点突出引起关注。

1977年出现了《可移植C语言编译程序》 ,推动了UNIX在各种机器上实现 ,C语言也得到推广,其发展相辅相成。

1978年影响深远的名著《The C Programming Language》由 Brian W.Kernighan和Dennis M.Ritchie 合著,被称为标准C。

之后,C语言先后移植到大、中、小、微型计算机上,已独立于UNIX和PDP,风靡世界,成为最广泛的几种计算机语言之一。

1983年,美国国家标准化协会(ANSI)根据C语言各种版本对C的发展和扩充,制定了新的标准ANSI C ,比标准C有了很大的发展。

1987年,ANSI公布了新标准——87 ANSI C。

1988年K & R按照 ANSI C修改了他们的《The C Programming Language》。

1989年,ANSI发布了第一个完整的C语言标准——ANSI X3.159—1989,简称“C89”,不过人们也习惯称其为“ANSI C”。

C89在1990年被国际标准组织ISO(International Organization for Standardization)一字不改地采纳,ISO官方给予的名称为:ISO/IEC 9899,所以ISO/IEC9899: 1990也通常被简称为“C90”。

1990年,国际标准化组织接受了87 ANSI C为ISO C 的标准(ISO9899—1990)。
1994年,ISO又修订了C语言标准。

1999年,在做了一些必要的修正和完善后,ISO发布了新的C语言标准,命名为ISO/IEC 9899:1999,简称“C99”。

在2011年12月8日,ISO又正式发布了新的标准,称为ISO/IEC9899: 2011,简称为“C11”。
        经过40多年,C语言仍为最流行、最广泛使用的开发语言,目前所有操作系统都是主要用C语言开发的。中国要造CPU,要自己的操作系统,必须要好好研究C语言.C语言结合汇编语言可以写成任何一种操作系统及应用程序,其他高级语言都也是用C开发出来,不管是它是多么的高大上,始终摆不了C。既然C语言那么厉害,我们一起来学习它吧!

***原创作品,转载请说明出处。*******






欢迎光临 谷动谷力 (http://bbs.sunsili.com/) Powered by Discuz! X3.2