什麼是電腦程式為了使計算機執行一系列的操作,必須實現編好一條條指令,輸入到計算機。所謂程序,就是一組計算機能識別和執行的指令。每一條指令使計算機執行特定的操作。什麼是計算機語言人和人之間交流需要語言,人和計算機交流也需要語言。這就需要創造一種計算機和人都能識別的語言,這就是計算機語言。計算機語言經歷了三個發展階段。
機器語言:計算機工作基於二進位,從根本上說,計算機只能識別和接受0和1組成的指令。在計算機發展的初期,一般計算機的指令長度為16,即以16個二進位數組成一條指令。例如,用1011011000000000讓計算機進行一次加法運算。這種計算機能直接識別和接受的二進位代碼稱為機器指令。機器指令的集合就是該計算機的機器語言。但是,機器語言與人們習慣用的語言差別很大,難以推廣使用,因此初期只有極少數的計算機專業人員會編寫電腦程式。
符號語言:為了克服機器語言的上述缺點,人們創造出了符號語言,它用一些英文字母和數字表示一個指令。例如,用ADD代表『加』,SUB代表『減』。計算機並不能直接識別和執行符號語言的指令,需要用一種成為彙編程序的軟體,把符號語言的指令轉換成為機器指令。轉換的過程稱為「代真」或「彙編」。因此,符號語言又稱為符號彙編語言或彙編語言。不同型號的計算機的機器語言和彙編語言是互不通用的。機器語言和彙編語言是完全依賴與具體及其特性的,是面向機器的語言。由於它「貼近」計算機,或者說離計算機「很近」,它被稱為計算機低級語言。
高級語言:為了克服低級語言的缺點,人們創造出了高級語言。它很接近於人們習慣使用的自然語言和數學語言。例如,在C語言中,想計算和輸出3.5x6sin(3),只需寫出:printf("答案是:%f',3.5*6*sin(3));這種語言功能很強,且不依賴於具體機器,用它寫出的程序對任何型號的計算機都適用(或只需做很少的修改),它與具體的機器距離較遠,故稱為計算機高級語言。當然,計算機也是不能直接識別高級語言程序的,也要進行「翻譯」。用一種稱為編譯程序的軟體把用高級語言寫的程序(稱為源程序)轉換為機器指令的程序(稱為目標程序),然後然計算機指令機器指令程序,最後得到結果。高級語言的一個語句往往對應多條機器指令。
高級語言經歷了不同的發展階段:非結構化的語言:初期的語言屬於非結構化的語言,編程風格比較隨意,只要符合語法規則即可,沒有嚴格的規範要求,程序中的流程可以隨意跳轉。這樣使得程序變的難以閱讀和維護。結構化語言:為了解決以上問題,提出了「結構化程序設計方法」,規定程序必須有具有良好特性的基本結構(順序結構、分支結構、循環結構)構成。這種程序結構清晰,易於編寫、閱讀和維護。C語言就屬於結構化語言,這些語言的特點是支持結構化程序設計方法。面向對象的語言:近幾十年來,在處理規模較大的問題是,開始使用面向對象的語言。如C++,C#,Java等。
小編會將C語言的知識陸續發表,如果有什麼疑問也可在評論處提出,小編會在閒暇時間進行解答。
預告:
1.3 C語言的發展及其特點
1.4 最簡單的C語言程序