最近我想把計算機語言的發展史整理一下,閱讀了很多關於這方面的資料,並且畫了一張思維導圖,希望能夠加深對這一方面的思考和理解。
第一代程式語言(first generation programming language)是一種機器級別的程式語言,其被用 1s 和 0s 寫。它不需要被編譯和轉換和能夠被 cpu 直接使用。使用 1gl 這個**能夠很快和高效地被執行,因為它是直接被 cpu 執行的。然而,機器語言相比更級的語言稍難學習,如果發生了錯誤更難被編輯。而且**可移植性在基於 1gl 的**上顯著地縮減。第一代程式語言現在主要使用在非常古老的計算機上。機器級別的語言仍在現代語言的少數領域被使用,在建立機器語言的本機**編譯器的幫助下,通常來自乙個更高階的語言。
第二代程式語言是一種符號式語言,以簡單易懂的英文或數字符來取代機器語言中的二進碼,也稱之為助憶語言。第二代程式語言(2gl)指的是組合語言(assembly language),是最接近機器語言(1gl)的程式語言。[1] 它是一種符號式語言,以簡單易懂的英文或數字符來取代機器語言中的二進碼,也稱之為助憶語言(mnemonic language)。[1] 組合語言無法直接供給機器使用,仍須透過組合程式(assembler)翻譯成由」0」、」1」組成的機器語言,才能被機器加以執行。[1] 組合語言近似於機器語言,一樣不具移植性,所以跟機器語言一樣被稱為低階語言。
第三代程式語言(3gl)是設計更容易被人們所理解的高階程式語言,包括像命名變數的事物。fortran, algol 和 cobol 是這種語言的早期例子。大部分「現代」語言(basic, c, c++)是第三代語言。大部分 gls 支援結構化語言設計。
四代語言(fourth-generation language, 以下簡稱4gl)的出現是出於商業需要。4gl這個詞最早是在80年代初期出現在軟體廠商的廣告和產品介紹中的。因此,這些廠商的4gl產品不論從形式上看還是從功能上看,差別都很大。但是人們很快發現這一類語言由於具有「面向問題」、「非過程化程度高」等特點,可以成數量級地提高軟體生產率,縮短軟體開發周期,因此贏得了很多使用者。2023年,美國召開了全國性的4gl研討會,也正是在這前後,許多著名的計算機科學家對4gl展開了全面研究,從而使 4gl進入了電腦科學的研究範疇。
其原意是非過程化程式語言,是針對以處理過程為中心的第三代語言提出的,希望通過某些標準處理過程的自動生成,使使用者只說明要做什麼,而把具體的執行步驟的安排交軟體自動處理。
**:
計算機語言發展史
軟體的產生始於早期的機械式計算機的開發。從19世紀起,隨著機械式計算機的更新,出現了穿孔卡片,這種卡片可以指導計算機進行工作。但是直到20世紀中期現代化的電子計算機出現之後,軟體才真正得以飛速發展。在世界上第一台計算機eniac上使用的也是穿孔卡片,在卡片上使用的是專家們才能理解的語言,由於它與人類...
計算機發展史
早期的計算機 人們通過輸入裝置把需要處理的資訊輸入計算機,計算機通過 處理器把資訊加工後,再通過輸出裝置把結果告訴人們。特點 龐大 兩層樓那麼高 通過扣動面板上的無數開關來輸入資訊,通過讀取面板上的訊號燈來獲取結果。具有內部儲存器的計算機 在 處理器旁邊加乙個內部儲存器。特點 相當於一張稿紙。但無法...
計算機發展史
世界上第一台電子數字式計算機 於1946年2月15日 在美國賓夕法尼亞大學 正式投入執行,它的名稱叫 eniac 埃尼阿克 是 電子數值積分計算機 the electronic numberical intergrator and computer 的縮寫。它使用了17468個真空電子管,耗電174...