程式語言 計算機語言的種類非常的多,總的來說可以分成
機器語言 ,
彙編語言 ,
高級語言 三大類。計算機每做的一次動作,一個步驟,都是按照已經用計算機語言編好的程式來執行的,程式是計算機要執行的
指令 的
集合 ,而程式全部都是用我們所掌握的語言來編寫的。所以人們要控制計算機一定要通過計算機語言向計算機發出命令。 通用的程式語言有兩種形式:彙編語言和高級語言。
彙編語言 彙編語言 的實質和機器語言是相同的,都是直接對硬體操作,只不過指令採用了英文縮寫的
標識符 ,更容易識別和記憶。它同樣需要編程者將每一步具體的操作用命令的形式寫出來。彙編程式通常由三部分組成:指令、偽指令和宏指令。彙編程式的每一句指令只能對應實際操作過程中的一個很細微的動作,例如移動、自增,因此彙編源程式一般比較冗長、複雜、容易出錯,而且使用彙編語言編程需要有更多的計算機專業知識,但彙編語言的優點也是顯而易見的,用彙編語言所能完成的操作不是一般高級語言所能實現的,而且源程式經彙編生成的
執行檔 不僅比較小,而且執行速度很快。
高級語言 高級語言是絕大多數編程者的選擇。和
彙編語言 相比,它不但將許多相關的機器指令合成為單條指令,並且去掉了與具體操作有關但與完成工作無關的細節,例如使用堆疊、暫存器等,這樣就大大簡化了程式中的指令。同時,由於省略了很多細節,編程者也就不需要有太多的專業知識。
高級語言主要是相對於彙編語言而言,它並不是特指某一種具體的語言,而是包括了很多程式語言,如流行的VB、VC、FoxPro、Delphi等,這些語言的語法、命令格式都各不相同。 像最簡單的程式語言
PASCAL 語言也屬於高級語言。高級語言所編制的程式不能直接被計算機識別,必須經過轉換才能被執行,按轉換方式可將它們分為兩類:
1)解釋類:執行方式類似於我們日常生活中的“同聲翻譯”,應用程式
原始碼 一邊由相應語言的
解釋器 “翻譯”成目標代碼(
機器語言 ),一邊執行,因此效率比較低,而且不能生成可獨立執行的
執行檔 ,應用程式不能脫離其解釋器,但這種方式比較靈活,可以動態地調整、修改應用程式。
2)編譯類:編譯是指在套用源程式執行之前,就將程式原始碼“翻譯”成目標代碼(機器語言),因此其目標程式可以脫離其語言環境獨立執行,使用比較方便、效率較高。但應用程式一旦需要修改,必須先修改原始碼,再重新編譯生成新的目標檔案(* .OBJ)才能執行,只有目標檔案而沒有原始碼,修改很不方便。大多數的程式語言都是編譯型的,例如
Visual C++ 、Visual Foxpro、
Delphi 等。
2009年排行 TIOBE世界程式語言排行榜2009年2月榜單。
前更新20排行 變動曲線 09變動排名曲線 21到50排行 09年21到50排名 2010年排行 前20排行 變動曲線 21到50排行 2011年排行 TIOBE世界程式語言排行榜2011年3月榜單
前20位排行 排名變動曲線 21到50名 2011年12月5日Tiobe發布了2011年12月的程式語言排行榜。新一期排行榜
Objective-C 持續給力躍居第五位,而上一期關注的谷歌
Dart語言 也上升到第68名,但
PHP 由第四位跌到第6名。從2001年
Tiobe 程式語言排行榜開始發布至今,C++幾乎一直占據著第三名。雖然
Perl ,
Visual Basic 和PHP曾經也排到第3名,但和C++相比,他們就顯得不值一提了,因為他們最多只能保持幾個月而已。然而相比C++,微軟的程式語言C#卻更被看好,甚至有人認為C#勢必會取代C++,C++是垃圾語言。因為微軟的大力推廣,使用C#的人越來越多,而老將C++卻正在被人遺忘。不甘寂寞,2011年C++再次亮劍,13年來第一個重大修訂版,C++11橫空出世!
下面是前20名的程式語言排行
掀起C++ 11的神秘面紗 C++標準在1998年獲得通過後,有兩位委員會委員預言,下一代C++標準將“肯定”包括內置的垃圾回收器(GC),但可能不會支持多執行緒,因為定義一個可移植的執行緒模型涉及到的技術太複雜了,13年後,新的C++標準C++11也接近完成,你猜怎么著?讓那兩位委員沒想到的是,本次更新還是沒有包括GC,但卻包括了一個先進的執行緒庫。
C++之父Bjame Stroustrup說C++11就像一個新語言, 的確,C++11核心已經發生了巨大的變化,它支持Lambda表達式,對象類型自動推斷,統一的初始化語法,委託
構造函式 ,deleted和defaulted函式聲明nullptr,以及最重要的
右值引用 。
C++11中值得關注的幾大變化
◆自動類型推斷和decltype
◆統一初始化語法
◆Deleted和Defaulted函式
◆委託構造函式
◆右值引用
C++11標準庫
C++於2003年以庫技術報告1(TR1)的形式經歷了重大改版,TR1包括新的容器類(unordered_set,unordered_map,unordered_multiset和unordered_multimap)和多個支撐
正則表達式 、
元組 和
函式對象 封裝器等的新庫。隨著C++11標準獲得通過,TR1和自它首次發布以來新增的庫被正式納入標準的C++標準,下面是C++11標準庫的一些特性:
執行緒庫
站在程式設計師的角度來看,C++11最重要的新功能毫無疑問是並行操作,C++11擁有一個代表執行執行緒的執行緒類,在並行環境中用於同步,async()
函式模板 啟動並行任務,為執行緒獨特的數據聲明thread_local存儲類型。如果你想找C++11
執行緒 庫的快速教程,請閱讀Anthony William的“C++0x中更簡單的多執行緒”。
C++98隻定義了一個智慧型指針類auto_ptr,它現在已經被廢棄了,C++11引入了新的智慧型指針類
shared_ptr 和最近添加的unique_ptr,兩者都兼容其它標準庫組件,因此你可以在標準容器內安全保存這些智慧型指針,並使用標準算法操作它們。
新的算法
C++11標準庫定義了新的算法模仿all_of(),any_of()和none_of()操作,下面列出適用於ispositive()到(first, first+n)範圍,且使用all_of(), any_of() and none_of() 檢查範圍的屬性的謂詞:
#include<algorithm> //C++11 code //are all of the elements positive? all_of(first, first+n, ispositive()); //false //is there at least one positive element? any_of(first, first+n, ispositive());//true // are none of the elements positive?
none_of(first, first+n, ispositive()); //false
一種新型copy_n算法也可用了,使用copy_n()函式,複製一個包含5個元素的
數組 到另一個數組的代碼如下:
#include
int source[5]={0,12,34,50,80};
int target[5];
//copy 5 elements from source to target
copy_n(source,5,target);
算法iota()創建了一個值順序遞增的範圍,好像分配一個初始值給*first,然後使用前綴++使值遞增,在下面的代碼中,iota()分配連續值{10,11,12,13,14}給數組arr,並將{‘a’,’b’,’c’}分配給char數組c。
include<numeric>
int a[5]={0};
char c[3]={0};
iota(a, a+5, 10); //changes a to {10,11,12,13,14}
iota(c, c+3, 'a'); //{'a','b','c'}
C++11仍然缺乏一些有用的庫,如XML API,
套接字 ,GUI,反射以及前面提到的一個合適的自動垃圾回收器,但C++11的確也帶來了許多新特性,讓C++變得更加安全,高效,易學易用。
如果C++11的變化對你來說太大的話,也不要驚慌,多花些時間逐漸消化這一切,當你完全吸收了C++11的變化後,你可能就會同意Stroustrup的說法:C++11感覺就像一個新語言,一個更好的新語言。
2012年排行 2012年1月程式語言排行榜:Objective-C成為2011年度語言TIOBE 公布了2012年1月程式語言排行榜。前三的位置有變動,正如上期的標題所言,第三位置已經易主。Objective-C 在獲得第二名的兩年後,終於贏得了 TIOBE 2011 年度程式語言。
這個獎項是頒發給在 2011 年中市場份額增長最多的程式語言。Objective-C 的市場份額增比 2011 年 1 月份高出 3.91%。這主要歸功於 iPhone 和 iPad 的持續成功,這兩種設備上的程式主要都由Objective-C 實現。
TIOBE 指數在 2011 年中還有什麼其他值得關注的變動呢?除了 Objective-C 之外,C# 的市場份額同樣獲得很大增長(+2.55%),緊隨其後的是 C(+1.15%)和 JavaScript(+0.73%)。另一方面,對於2010年的年度程式語言Python來說,是個悲劇年,份額下降3.05%,PHP 也下降了2.13%。 2012年會有什麼變化呢?會有一種新程式語言闖入 Top 10么?我們認為會有的。可能進入Top 10的語言是:F#、Groovy、 R。比如:R 語言首次進入 Top 20. 對統計人員來說,R 語言已成為統計領域中的主要程式語言。
2012年2月6日,TIOBE發布了2012年2月程式語言的排行榜。Objective-C延續上月的升勢,占有率已然邁入7%的行列。而榜首的Java和C依舊占據頭兩位的名詞。Python語言正在加速下跌,
LOGO語言 。LOGO語言是不是設計師用的嗎?
如果你在搜尋引擎里搜尋LOGO這個詞,出來最多的當然是好多個大公司的標誌。又有誰知道
LOGO語言 是什麼呢?我們首先要回到1968年。這一年蘇聯入侵捷克斯洛伐克,馬丁路德金遇刺身亡,而LOGO語言也在這一年誕生。
LOGO語言是美國國家科學基金會所資助的一項專案研究,在麻省理工學院(MIT)的人工智慧研究室完成。 LOGO源自希臘文,原意即為思想,是由一名叫佩伯特的心理學家在從事兒童學習的研究中,發現一些與他的想法相反的教學方法,並在一個假日中出外散步時,偶然間看到一個像海龜的機械裝置觸發靈感,於是利用他廣博的知識及聰明的才智而最終完成了LOGO語言的設計。
LOGO語言是一種早期的程式語言,也是一種與自然語言非常接近的,它通過“繪圖”的方式來學習編程,對初學者特別是兒童進行寓教於樂的教學方式。
2013年排行 2013年4月排行榜
2013年4月程式語言排行榜Top 20 語言走勢圖
4月程式語言排行榜前10位的長期走勢圖 2013年4月TIOBE程式語言排行榜發布了!4月份最主要的變化是 C 語言超越 Java 又居第一,而 C++ 超過 Objective-C 位列第三。
2013年11月排行榜
2014年排行 2014年3月排行榜
2015年排行 2015年一月排行榜
2015年一月排行榜 2015年4月排行榜
2015年四月排行榜 2015年五月排行榜
2015年5月排行榜 2015年六月排行榜
2015年六月排行榜 2016年排行 2016年1月程式語言排名:
21-50 程式語言排名:
2017年排行 2017年3月程式語言排行榜
2017年12月程式語言排行榜 2017年12月程式語言排行榜 TIOBE 2017年3月程式語言1-20排行榜 2018年排行 2018年9月程式語言TOP20
2018年排行 九月頭條:Python第一次進入TiOBE指數前3名
2019年排行 2019年1月程式語言TOP20
一月頭條:Python是Tiobe 2018年的程式語言!
python程式語言榮獲“年度程式語言”稱號!python之所以獲得這個稱號,是因為與其他語言相比,它在2018年獲得了最多的排名。Python語言贏得了3.62%,其次是VisualBasic .NET和Java。Python現在肯定已經成為大型程式語言的一部分。近20年來,C、C++和Java一直排在前3位,遠遠領先於其他組件。python現在加入了這三種語言。它是當今大學最常教授的第一語言,在統計領域排名第一,在人工智慧編程領域排名第一,在腳本編寫方面排名第一,在系統測試方面排名第一。除此之外,python還在Web編程和科學計算方面處於領先地位(只是命名一些其他領域)。總之,python無處不在。
2019年1月排行