C語言說難不難,入門很容易,,學(xué)精就有點難度了 1 編程語言 最早出現(xiàn)的是機器語言,,機器語言是一種指令集的體系。這種指令集,,稱機器碼(machine code),, 是電腦的CPU可直接解讀的數(shù)據(jù)。機器語言是用二進制代碼表示的計算機能直接識別和執(zhí)行的一種機器指令的集合,。 機器語言是計算機的設(shè)計者通過計算機的硬件結(jié)構(gòu)賦予計算機的操作功能,。機器語言具有靈活、直接執(zhí)行和速度快等特點,。不同型號的計算機其機器語言是不相通的,,按著一種計算機的機器指令編制的程序,不能在另一種計算機上執(zhí)行,。 一條指令就是機器語言的一個語句,,它是一組有意義的二進制代碼,指令的基本格式如,,操作碼字段和地址碼字段,,其中操作碼指明了指令的操作性質(zhì)及功能,地址碼則給出了操作數(shù)或操作數(shù)的地址,。 用機器語言編寫程序,,編程人員要首先熟記所用計算機的全部指令代碼和代碼的涵義。手編程序時,,程序員得自己處理每條指令和每一數(shù)據(jù)的存儲分配和輸入輸出,,還得記住編程過程中每步所使用的工作單元處在何種狀態(tài)。這是一件十分繁瑣的工作,。編寫程序花費的時間往往是實際運行時間的幾十倍或幾百倍,。而且,編出的程序全是些0和1的指令代碼,,直觀性差,,還容易出錯,。除了計算機生產(chǎn)廠家的專業(yè)人員外,絕大多數(shù)的程序員已經(jīng)不再去學(xué)習(xí)機器語言了,。 正是因為機器語言的各種缺點,,又不方便程序員去記憶,并且編寫程序以及檢查程序中出現(xiàn)的錯誤,,就在程序中出現(xiàn)了助記符,,這便是匯編語言,匯編語言是將二進制的機器碼通過助記符的方式讓人可以更方便的編寫并檢查的低級語言,,匯編語言接近機器語言,可以看做是機器語言的另一種形式,,計算機在運行時也需要將其變?yōu)闄C器語言的二進制形式才可運行,,在不同的設(shè)備中,匯編語言對應(yīng)著不同的機器語言指令集,,通過匯編過程轉(zhuǎn)換成機器指令,。普遍地說,特定的匯編語言和特定的機器語言指令集是一一對應(yīng)的,不同平臺之間不可直接移植,, 機器語言和匯編語言跟硬件有著很大的關(guān)系,,同樣的功能,我們在不同平臺上需要以不同方式去編寫,,簡單來說就是程序沒有移植性,。所以我們需要考慮,如何脫離硬件平臺,,將編程重心轉(zhuǎn)移到人的身上,,不會因為硬件的不同,而改變我們的程序代碼,,便有了后面以人為重心的編程語言,,也稱為高級語言 高級語言最接近人類語言,但機器是無法執(zhí)行的,,需要最終編譯連接成二進制的機器代碼才可被計算機執(zhí)行,,高級語言里面有C,C++,C#,,java等等,,而現(xiàn)在我們所學(xué)是就是C語言,就是高級語言的一種,。 2 C語言 1972年由美國的貝爾實驗室在B語言的基礎(chǔ)上設(shè)計開發(fā)了C語言其目的是為了更好的設(shè)計開發(fā)UNIX操作系統(tǒng),,隨著微型計算機的日益普及,出現(xiàn)了許多C語言的版本 1983年,,美國國家標準協(xié)會成立了一個委員會,,用來專門規(guī)范C語言 1989年,,規(guī)范了C語言版本-----C89或者C90 1999年,在C89的基礎(chǔ)上,,新增了一些特性----C99標準 C語言:用來人和計算機進行交流的一種編程語言,。而計算機所識別的語言是機器語言(由0和1組成得二進制碼)需要將C語言轉(zhuǎn)換為計算機可以識別得機器語言,此時就是需要一個“翻譯官”,,而編譯器就充當了這個角色,。因為C語言編譯(編譯器)生成的可執(zhí)行文件中,含有計算機所能識別的機器代碼,。 3 C語言的特點 3.1 C語言可以直接為對位 字節(jié) 地址操作 數(shù)據(jù)需要存儲,,需要存儲單元,存儲單元大小 位,,字節(jié): 衡量計算機內(nèi)存中存儲單元的大小 位:單位:bit 是計算機中最小的存儲單位,,只能存儲0或1 字節(jié):單位:byte, 是計算機中常用的存儲單位,,1byte = 8 bit 地址:在計算機系統(tǒng)中,,系統(tǒng)為每一個字節(jié)分配一個編號,編號是固定,,并采用十六進制的形式表示,,一個字節(jié)固定一個編號,這個編號就是地址,地址的長度也是固定 1B = 8bit 1KB = 1024B 1MB = 1024KB 1GB = 1024MB 1TB = 1024GB 3.2 數(shù)據(jù)類型豐富 存儲數(shù)據(jù),,---------》存儲單位 數(shù)據(jù)存儲在內(nèi)存空間中,,占多大的空間,(占多大的字節(jié)) 10 56 700 80000 數(shù)據(jù)類型根據(jù)數(shù)據(jù)的形式,,(數(shù)據(jù)的類型)確定數(shù)據(jù)在內(nèi)存空間中需要占多大的字節(jié) 3.3 運算符豐富 運算符:對數(shù)據(jù)的一種操作規(guī)則(計算方法) 34種運算符 3.4 結(jié)構(gòu)化編程 順序結(jié)構(gòu) 選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 程序劇透邏輯性,,層次清晰,易于閱讀 3.5 程序代碼生成質(zhì)量高,,編程效率高,, 3.6 書寫靈活, 3.7 具有移植性 等等,,C語言是最為基礎(chǔ)的語言 |
|