自計算機誕生以來,產生了上千種程序設計語言,有些已經被淘汰,有些則得到了推廣和發展,程序設計語言經歷了由低級到高級的發展過程,可以分為機器語言,匯編語言,高級語言和面向對象的語言,低級語言包括機器語言和匯編語言,高級語言有很多種,包括C,Basic,Fortran等;面向對象的語言則有C++,Visual Basic,JAVA等.超低級的語言越接近計算機的二進制指令,越高級的語言越接近人類的思維方式.
1.機器語言
機器語言是計算機能夠直接識別并執行的二進制指令,執行效率高,但機器語言指令由計算機的指令系統提供,采用二進制,人們閱讀與編寫比較困難,效率低下,容易出錯,不同計算機的指令系統也不同,使得機器指令編寫的程序通用性較差.
2.匯編語言
匯編語言采用助記符來代替機器語言的指令碼,使機器語言符號化,編程效率得到提高,如加法表示ADD,指令"ADD AX,DX"的含義是將AX寄存器中的數據與DX寄存器中的數據相加,并將結果存入AX內,匯編程序要轉換成二進制形式交由計算機執行,因此執行效率遜于機器語言,使用匯編語言編程,程序設計人員需要對機器硬件有深入了解,沒有擺脫對具體機器的依賴,編程仍然具有較大難度.
3.高級語言
為了解決計算機硬件的高速度和程序編制的低效率之間的矛盾,20世紀50年代產生了程序設計語言,也稱高級語言,高級語言比較接近自然語言,直觀,精確,通用,易學易懂,編程效率高,便于移植.
4.面向對象的程序設計語言
面向對象的程序設計語言更接近人們的思維習慣,它將事物或某個操作抽象成類,將事物的屬性抽象為類的屬性,事物所能執行的操作抽象為方法,常用的面向對象語言有Visual C++,Visual Basic,JAVA等.
計算機不能直接識別高級語言,需要借助編譯軟件將高級語言編寫的源程序轉換成計算機能識別的目標程序.
程序執行有編譯執行和解釋執行兩種方式.
1.編譯執行方式是將整個源程序翻譯生成一個可執行的目標程序,這個目標程序可以脫離編譯環境和源程序獨立存在和執行.
2.解釋執行廣告是將源程序逐句解釋成二進制指令,解釋一句執行一句,不生成可執行文件,它的執行速度比編譯方式慢.