www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 芯聞號 > 充電吧
[導讀]計算機語言與人類語言一樣,都是一種交流的工具。人類語言是人與人之間交流的工具,計算機語言是人與計算機之間交流的工具。所有語言的都有它的語法、語素和語用;都有它的語法規(guī)則,這樣才能被交流的雙方相互理解;

計算機語言與人類語言一樣,都是一種交流的工具。人類語言是人與人之間交流的工具,計算機語言是人與計算機之間交流的工具。所有語言的都有它的語法、語素和語用;都有它的語法規(guī)則,這樣才能被交流的雙方相互理解;計算機語言也不例外,我們編寫的計算機程序也必須遵守一定的語法規(guī)則,才能被編譯器所識別,最后翻譯成能被CPU理解執(zhí)行的機器語言,其中機器語言是CPU廠商設計的。

1. 計算機語言相關概念解釋

① 編譯程序:編譯程序又稱為編譯器,是一個語言翻譯程序,它把源語言翻譯成目標語言。源語言主要指各種計算機語言,目標語言主要指CPU能識別的機器碼。例如英語翻譯成漢語的過程中,翻譯官相當于編譯器。

② 編譯:編譯源語言,生成目標代碼并形成機器碼的過程,相當于現實翻譯中的筆譯。C語言屬編譯型語言。

③ 解釋:邊把源語言解釋成機器碼邊執(zhí)行的過程,相當于現實翻譯中的口譯。Shell腳本屬解釋型語言。

④ 編譯階段:編譯階段包括詞法分析、語法分析、語義分析、中間代碼生成、代碼優(yōu)化、目標代碼生成六個階段,貫穿始終的功能模塊有表格管理和出錯管理。

⑤ 為什么需要編譯程序:就象我們母語是漢語,想與一個埃及人交流一樣,但我們不懂埃及語,如果有一個自動語言翻譯機(或翻譯官),雙方的交流才能變得流暢。由于CPU指令是二進制指令,人們難以在此基礎上進行有效編程,所以發(fā)明了各種各樣的計算機高級語言,然后通過編譯器把人們編寫的計算機高級語言程序翻譯成CPU能理解的二進制指令。

⑥ 程序:通常指的是人們編寫的計算機語言源代碼和編譯后的執(zhí)行碼,其中源代碼稱為源程序,執(zhí)行碼稱為執(zhí)行程序,程序是靜態(tài)的。程序相當于一個企業(yè)行政部門出臺的行政管理文件。

⑦ 進程:程序的一次執(zhí)行過程,進程是動態(tài)的。進程相當于企業(yè)各部門拿著行政管理文件的執(zhí)行過程。

⑧ CPU:CPU主要與內存通信,其主要功能有解釋指令、存數據到內存、從內存取數據、數據計算和中斷處理,CPU最突出的功能為解釋指令和數據計算。CPU的工作是從內存中取出指令并完成指令的自動化執(zhí)行。

⑨ 內存:內存是存放電腦工作數據的空間,斷電后數據丟失。內存的最小單位為字節(jié),內存每一個最小單位空間都有其編號(即內存地址),CPU是通過內存地址訪問內存數據。在內存看來,內存里存放的數據都是平等的,都是一串串二進制字符,沒有類型,也沒有含義,是計算機程序把內存的數據賦予特別的類型和意義。

⑩ 變量:一段內存空間的抽象,變量類型決定了變量存放內存空間的大小。計算機語言編譯成機器碼后,變量相對于內存的操作就轉變?yōu)閷ο鄳獌却娴刂返拇嫒〔僮鳌V苯哟嫒∈且话阕兞?,間接存取是指針變量。C語言變量原則為先定義,后使用。

? 機器程序:經過編譯器編譯后形成CPU能理解的機器指令。在機器程序中,只有內存地址,沒有變量概念;機器程序中所有變量失去意義,變量的操作都會轉換成對內存地址的存取操作。機器程序有如下幾種類型的操作:CPU的計算操作、內存空間的申請與釋放、CPU把寄存器數據存到內存、取內存數據到CPU寄存器、內存數據從一片空間復制到另一片空間、中斷操作等。

? Linux系統編譯方法:gcc(或cc) a.c(源代碼名稱) -o a(執(zhí)行碼)。在這里a.c和a都是程序,其中a.c為源程序,a為可執(zhí)行程序。在界面上輸入 ./a,a就開始了執(zhí)行之旅,其執(zhí)行過程稱為進程。

2. C語言數據類型種類

圖4-1畫出了C語言數據類型種類,在C語言中只允許使用下面這些數據類型。

圖4-1 C語言數據類型種類

3. 32個關鍵字

C語言有如下32個關鍵字,這些關鍵字由系統定義,不能重新作為其他定義。

auto break case char const continue default do double else enum extern float for goto int long register return short signed sizeof static struct switch typedef unsigned union void volatile while

4. 9種控制語句

C語言控制語句的功能是完成程序流程的控制,C語言有如下9種控制語句。

① if( )-else(條件語句)

② for( )(循環(huán)語句)

③ while( )(循環(huán)語句)

④ do-while( )(循環(huán)語句)

⑤ continue(結束本次循環(huán)開始下一次循環(huán)語句)

⑥ break(跳出switch或循環(huán)語句)

⑦ switch(多分支選擇語句)

⑧ goto(跳轉語句)

⑨ return(從函數返回語句)

5. C程序格式和結構特點

C語言習慣用小寫字母,大小寫敏感;不使用行號,無程序行概念;可使用空行和空格;常用鋸齒形書寫格式。

下面以一個實例說明C語言結構特點。

/* example1.1 The first C Program*/ 注釋

#include

main() 函數

{

printf(“Hello,World!”); 語句

}

C語言由函數、語句和注釋三個部分組成,這三部分的說明和要求如下。

(1)函數與主函數

一個C語言源程序可以由一個或多個源文件組成。每個源文件可由一個或多個函數組成。一個源程序不論由多少個文件組成,都有一個且只能有一個main函數,即主函數。

源程序中可以有預處理命令(include命令僅為其中的一種),預處理命令通常應放在源文件頭。

每一個說明,每一個語句都必須以分號結尾。但預處理命令,函數頭和花括號“}”之后不能加分號。

標識符、關鍵字之間必須至少加一個空格以示間隔,若已有明顯的間隔符,也可不再加空格來間隔。

(2)程序語句

C程序由語句組成,用“;”作為語句終止符。

{}表示一個語句的整體。if、for、while包含多條語句時需要用{}括起來表示一個整體,單條語句則可直接用“;”表示語句終止。

(3)注釋

/* */為注釋,不能嵌套,注釋不產生編譯代碼。

6. C語言程序的開發(fā)過程

編輯 編譯(預編譯、編譯、鏈接) 形成執(zhí)行碼 執(zhí)行

7. 書寫C語言程序時應遵循的規(guī)則

一個說明或一個語句應該占一行。

用{}括起來的部分,通常表示了程序的某一層次結構。{}一般與該結構語句的第一個字母對齊,并單獨占一行。

使用縮進方式編程,低一層次的語句比高一層次的語句縮進若干空格后書寫,以便看起來更加清晰,增加程序的可讀性。

有足夠的注釋。有合適的空行。

8. C語言的字符集

字符是組成語言的最基本的元素。C語言字符集由字母、數字、空格、標點和特殊字符組成。在字符串和注釋中還可以使用漢字或其他可表示的圖形符號。

(1)字母

小寫字母a~z共26個,大寫字母A~Z共26個。

(2)數字

0~9共10個。

(3)空白符

空格符、制表符、換行符等統稱為空白符,空白符只在字符常量和字符串中起作用。在其他地方出現時,只起間隔作用,編譯程序對它們忽略不計。在程序中適當的地方使用空白符將增加程序的清晰性和可讀性。

(4)標點和特殊字符

包括“,”、“;”等標點和“[”、“]”、“*”等特殊字符。

9. C語言詞匯

在C語言中使用的詞匯分為六類,分別為標識符、關鍵字、運算符、分隔符、常量和注釋符,具體說明如下。

(1)標識符

在程序中使用的常量名、變量名、函數名等統稱為標識符。除庫函數的函數名由系統定義外,其余都由用戶自定義。C規(guī)定,標識符只能是字母(A~Z,a~z)、數字(0~9)、下畫線(_)組成的字符串,并且其第一個字符必須是字母或下畫線。

a、x、x3、BOOK_1、sum5這5個標識符是合法的標識符。

以下標識符是非法的:

3s 以數字開頭。

s*T 出現非法字符*。

(2)關鍵字

關鍵字是由C語言規(guī)定的具有特定意義的字符串,通常也稱為保留字,用戶定義的標識符不應與關鍵字相同。C語言的關鍵字分為以下幾類:

① 類型說明符

用于定義、說明變量、函數或其他數據結構的類型,如int、double等。

② 語句定義符

用于表示一個語句的功能,如if~else就是條件語句的語句定義符。

③ 預處理命令字

用于表示一個預處理命令,如include。

(3)運算符

C語言中含有相當豐富的運算符。運算符與變量,函數一起組成表達式,表示各種運算功能。運算符由一個或多個字符組成。

(4)分隔符

在C語言中采用的分隔符有逗號和空格兩種。逗號主要用在類型說明和函數多個形參中分隔各個變量,空格多用于語句各單詞之間作間隔符。

(5)常量

C語言中使用的常量可分為數字常量、字符常量、字符串常量、符號常量、轉義字符等多種。

(6)注釋符

C語言的注釋符是以“/*”開頭并以“*/”結尾的串,在“/*”和“*/”之間的即為注釋。程序編譯時,不對注釋作任何處理,注釋可出現在程序中的任何位置,注釋是用來向用戶提示或解釋程序的意義。

10.C語言算法

C語言是結構化設計語言,結構化程序的靈魂是算法。瑞士Niklaus Wirth教授在20世紀60年代提出了“數據結構+算法=程序”的公式。做任何事情都有一定的步驟,為解決一個問題而采取的方法和步驟,就稱為算法。算法具有有窮性、確定性、有零個或多個輸入、有一個或多個輸出、有效性等特征。C語言算法是通過結構化設計方法來實現,其特點為自頂向下、逐步細化、模塊化設計和結構化編碼。

11. C語言編譯過程

圖4-2畫出了C語言的編譯流程。

圖4-2 C語言編譯過程

12. 計算機語言說明

數學是描述大自然的語言,會計是人們記錄商業(yè)活動的語言,人類語言(英語、漢語、法語、西班牙語等)則是人與人之間交流的語言,計算機語言是人們和計算機(CPU)交流的語言。

由于CPU只能理解機器語言(CPU指令集),而人們對機器語言(一串二進制數)很難閱讀和調式,于是就產生了匯編語言。匯編語言的特點是利用助記符代替相應的機器語言二進制指令,如利用“ADD”助記符代替二進制指令“1000001100000110”,匯編語言較機器語言更有利于人們編程,人們編寫的匯編源程序再經匯編編譯器翻譯成機器語言程序(執(zhí)行碼),執(zhí)行碼就是CPU能理解的二進制指令。

由于匯編語言是面向機器的低級語言,與CPU的指令集息息相關,是按CPU的“思考”方式編寫而成的計算機語言。匯編語言與人類思考方法相差較大,于是產生了面向過程的語言(PASCLE、C等)和面向對象的語言(C++、JAVA等)。但是計算機只能理解機器語言(CPU指令集),人們編寫的C語言、C++語言、JAVA語言源程序要翻譯成機器語言CPU才能夠執(zhí)行,執(zhí)行翻譯工作的是編譯程序。就這樣是一門新的計算機學科(編譯原理)產生了,編譯原理介紹了編譯程序的實現方法。masm是匯編的編譯程序,gcc是Linux下C語言和C++語言的編譯程序,JVC是JAVA的編譯程序。

萬物皆流,萬物歸宗。計算機源程序,無論是高級語言C、C++、JAVA源程序,還是匯編語言源程序,最終都要翻譯成機器語言,CPU才能夠執(zhí)行。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯合牽頭組建的NVI技術創(chuàng)新聯盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯...

關鍵字: VI 傳輸協議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉