6.計算機語言的發展 編程語言發展 編程語言類型 為什么會有編程語言 編程語言什么作用 機器語言 高級語言分類 編程語言歷史 編程語言有哪些 編程語言編年史


 

語言

計算機語言指用於人與計算機之間通訊的語言,也即是平時說的編程語言

 

編程

指令的概念很早就形成了,其實指令本身就是一種編程

一個指令替代了一組邏輯電路或者機電式/機械式中的一個計算單元

你只需要一個指令就相當於已經操作了一整個的模塊

這不也是一種編程的思維嗎,只不過是指令對應硬件

 

隨着指令在現代計算機中的應用,計算機程序得以快速的發展

因為一旦你知道計算機可以執行哪些指令,其實也就是哪些功能,具有哪些能力

你就可以把這些指令按照一定的邏輯順序重排組裝

這就是廣義上的計算機程序

 

計算機語言的發展有兩個階段

面向機器到脫離機器的轉變

針對不同場景解決不同業務邏輯問題方向的發展

 

機器語言

為了使用計算機計算,必須將程序指令輸入到計算機中

最原始的時候那就是開關和紙帶,也就是相當於直接使用二進制來工作,而且是人工操作

也就是使用該機器指令01組合的字符串

也就是機器語言,這其實是純粹的計算機語言

 

匯編語言

就如同母語是普通話的人就不能天生的和母語是英語的人交流

想要交流就必須有人要學習一門外語

而想要學習計算機的機器語言這門外語,遠比學習英語要復雜晦澀

因為機器語言01字符串對於人類的認知來說,完全就等同於亂碼

難讀、難編、難記和易出錯

你根本不會知道到底是什么意思

隨后,開始用與代碼指令實際含義相近的英文縮寫詞、字母和數字等符號來替代描述指令代碼

出現了匯編語言,匯編語言只是機器語言的助記符語言

不同的機器有不同的匯編語言

需要匯編程序翻譯成計算機可以識別的二進制機器語言

本質還是面向機器的低級語言

機器語言和匯編語言都是面向硬件的具體操作的,語言對機器過分依賴,所以稱之為低級語言

 

高級語言

為了能夠更加通用的解決問題,而不是專注於硬件本身,出現了高級語言

高級語言不用關注機器的指令,使用接近人習慣的自然語言和數學語言符號

能夠專注於問題本身的業務邏輯

顯然高級語言也是不能直接運行於機器上的,需要翻譯程序轉換為機器可以執行的目標代碼程序

雖然高級語言不涉及寄存器這些東西,不需要你了解硬件

但是這是高級語言隱藏了她們,而不是說這些東西不存在不重要,所有的語言都逃不過這一關

始終是要編程機器語言的

也正是由於隱藏了太多東西,就好像與底層的東西隔着好幾層玻璃

盡管看的見,但是自然清晰度下降

直接后果就是編譯后的文件變得更大,執行速度將會變慢(相對於匯編)

 

 

從網上扒出來一份統計,或許不准,作為了解

1951 – Regional Assembly Language

1952 – Autocode

1954 – IPL (LISP語言的祖先)

1955 – FLOW-MATIC (COBOL語言的祖先)

1957 – FORTRAN (第一個編譯型語言)

1957 – COMTRAN (COBOL語言的祖先)

1958 – LISP

1958 – ALGOL 58

1959 – FACT (COBOL語言的祖先)

1959 – COBOL

1959 – RPG

1962 – APL

1962 – Simula

1962 – SNOBOL

1963 – CPL (C語言的祖先)

1964 – BASIC

1964 – PL/I

1966 – JOSS

1967 – BCPL (C語言的祖先)

1968 – Logo

1969 – B (C語言的祖先)

1970 – Pascal

1970 – Forth

1972 – C

1972 – Smalltalk

1972 – Prolog

1973 – ML

1975 – Scheme

1978 – SQL

1980 – C++ (既有類的C語言,更名於1983年7月)

1983 – Ada

1984 – Common Lisp

1984 – MATLAB

1985 – Eiffel

1986 – Objective-C

1986 – Erlang

1987 – Perl

1988 – Tcl

1988 – Mathematica

1989 – FL

1990 – Haskell

1991 – Python

1991 – Visual Basic

1993 – Ruby

1993 – Lua

1994 – CLOS (ANSI Common Lisp的一部分)

1995 – Java

1995 – Delphi (Object Pascal)

1995 – JavaScript

1995 – PHP

1996 – WebDNA

1997 – Rebol

1999 – D

2000 – ActionScript

2001 – C#

2001 – Visual Basic .NET

2002 – F#

2003 – Groovy

2003 – Scala

2007 – Clojure

2009 – Go

2011 – Dart


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM