淺談C語言發展史

  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)的研究員Ken Thompson閒來無事,手癢難耐,想玩一個他自己編的,模擬在太陽系航行的電子遊戲——Space Travel。他揹着老闆,找到了臺空閒的機器——PDP-7。但這臺機器沒有操作系統,而遊戲必須使用操作系統的一些功能,於是他着手爲PDP-7開發操作系統。後來,這個操作系統被命名爲——UNIX。
  1970年,美國貝爾實驗室的 Ken Thompson,以BCPL語言爲基礎,設計出很簡單且很接近硬件的B語言(取BCPL的首字母)。並且他用B語言寫了第一個UNIX操作系統。
  1971年,同樣酷愛Space Travel的Dennis M.Ritchie爲了能早點兒玩上游戲,加入了Thompson的開發項目,合作開發UNIX。他的主要工作是改造B語言,使其更成熟。
  1972年,美國貝爾實驗室的 D.M.Ritchie 在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作爲這種語言的名字,這就是C語言。
  1973年初,C語言的主體完成。Thompson和Ritchie迫不及待地開始用它完全重寫了UNIX。此時,編程的樂趣使他們已經完全忘記了那個”Space Travel”,一門心思地投入到了UNIX和C語言的開發中。隨着UNIX的發展,C語言自身也在不斷地完善。直到今天,各種版本的UNIX內核和周邊工具仍然使用C語言作爲最主要的開發語言,其中還有不少繼承Thompson和Ritchie之手的代碼。
  在開發中,他們還考慮把UNIX移植到其他類型的計算機上使用。C語言強大的移植性(Portability)在此顯現。機器語言和彙編語言都不具有移植性,爲x86開發的程序,不可能在Alpha,SPARC和ARM等機器上運行。而C語言程序則可以使用在任意架構的處理器上,只要那種架構的處理器具有對應的C語言編譯器和庫,然後將C源代碼編譯、連接成目標二進制文件之後即可運行。
這裏寫圖片描述
  1977年,Dennis M.Ritchie發表了不依賴於具體機器系統的C語言編譯文本《可移植的C語言編譯程序》。
  C語言繼續發展,在1982年,很多有識之士和美國國家標準協會爲了使這個語言健康地發展下去,決定成立C標準委員會,建立C語言的標準。委員會由硬件廠商,編譯器及其他軟件工具生產商,軟件設計師,顧問,學術界人士,C語言作者和應用程序員組成。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”。
  1999年,在做了一些必要的修正和完善後,ISO發佈了新的C語言標準,命名爲ISO/IEC 9899:1999,簡稱“C99”。 在2011年12月8日,ISO又正式發佈了新的標準,稱爲ISO/IEC9899: 2011,簡稱爲“C11”。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章