“C語言” 讀書札記之[程序和編程語言]
上篇,我給自己做了計劃,要好好學(xué)習(xí)C語言,那么現(xiàn)在開始吧?!?a target="_blank" >Web程序員學(xué)習(xí)C語言之讀書計劃】
想當(dāng)年(也沒幾年)剛出道的時候,特別的依賴windows,后來發(fā)現(xiàn),我的開發(fā)經(jīng)常要在linux下進行,怎能不讓我轉(zhuǎn)變觀念呢?我也慢慢適應(yīng)linux,直到半年前,撒丫子的,就直接把xp系統(tǒng)干掉了,徹底用上ubuntu了。又后來發(fā)現(xiàn)有人用mac系統(tǒng)用的挺爽,尤其是那個界面,但是想想我用ubuntu也沒幾天,我也太容易移情別戀了,還是繼續(xù)我的ubuntu吧。————題外話。
在ubuntu下做C開發(fā)很順手,因為我經(jīng)常在ubuntu下進行php開發(fā)。——Linux為C語言提供很好的支持(如編譯工具gcc,調(diào)試工具gdb)。我比較喜歡的一個vim操作教程 簡明 Vim 練級攻略 ,估計你看會了,vim編程你就差不多了,尤其是那幾個動畫,很好玩的。
現(xiàn)在開始,入正題吧!
思維導(dǎo)圖
對應(yīng)思維導(dǎo)圖,點擊可查看大圖
計算機
敢問世間計算機為何物?直教coder以身相許。
維基云:計算機乃computer,俗稱電腦,乃是一種利用電子學(xué)原理,根據(jù)一系列指令來對數(shù)據(jù)進行處理的機器。——要知具體細節(jié),請點擊于此 。
綜合上述得知:計算機是由數(shù)字電路組成的運算機器,只能對數(shù)字(也就是比特)做運算。
程序(Program)——計算機程序
那程序又是什么東西呢?我們是程序員,如果連程序都不知道,那你就找塊豆腐撞死得了。——反正我撞了幾次,沒死,到現(xiàn)在也不明白為什么沒死成!
程序是指一組指示計算機或其他具有訊息處理能力裝置每一步動作的指令(這里的指令偏重于語言層面,因為它不是計算機語言,可以認(rèn)為是人類語言,然后通過編譯器把這個語言轉(zhuǎn)化成機器指令。也就是說程序是給人看的,最終轉(zhuǎn)化成指令讓計算機執(zhí)行)。
特點:
1、能夠讓人讀懂。
2、告訴計算機如何完成一個計算任務(wù)。
3、為了在系統(tǒng)上運行,需要轉(zhuǎn)化成低級的機器語言指令。
指令:老是提指令,那么指令又是什么東東?
定義:指令是指示計算機做某種運算的命令?!?/p>
分類:
輸入:從鍵盤、文件或者其它設(shè)備獲取數(shù)據(jù)。輸出:把數(shù)據(jù)顯示到屏幕,或者存入一個文件,或者發(fā)送到其它設(shè)備?;具\算:執(zhí)行最基本的數(shù)學(xué)運算(加減乘除)和數(shù)據(jù)存取。測試和分支:測試某個條件,然后根據(jù)不同的測試結(jié)果執(zhí)行不同的后續(xù)指令。循環(huán):重復(fù)執(zhí)行一系列操作。
編寫程序可以說就是這樣一個過程:把復(fù)雜的任務(wù)分解成子任務(wù),把子任務(wù)再分解成更簡單的任務(wù),層層分解,直到最后簡單得可以用以上指令來完成。
編程語言
分類:低級語言和高級語言。
低級語言有機器語言和匯編語言(最后也得通過匯編器轉(zhuǎn)成機器語言指令,方可執(zhí)行)。特點是直接用計算機指令編寫程序。——真的難以想想他們是怎么編程的。
高級語言可就多了,什么C語言、Java語言、C#,C++等等。特點是用語句編寫程序。我個人覺得這個層面的程序我們不能認(rèn)為是指令,而只能算是語言而已,最終通過相應(yīng)編譯器編譯之后的內(nèi)容才能算是指令,因為這時候機器才能識別。
編譯執(zhí)行過程
這個篇幅太多了,所以我打算單獨分出一篇博文來說明。
總結(jié)
我不知道我理解的對不對,如果理解上有錯誤,希望各位及時賜教之,讓我及時改正。
要知后事如何,且聽下回分解。
原文鏈接:http://www.cnblogs.com/baochuan/archive/2012/06/21/2556366.html
【編輯推薦】