C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)知識(shí)-課件_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)知識(shí)-課件_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)知識(shí)-課件_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)知識(shí)-課件_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)知識(shí)-課件_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

ppt課件1計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)C語(yǔ)言ppt課件1計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)C語(yǔ)言ppt課件2關(guān)于本課程的教學(xué)安排本課程的教學(xué)目的:通過(guò)對(duì)C語(yǔ)言的學(xué)習(xí),掌握使用計(jì)算機(jī)編程語(yǔ)言解決實(shí)際問(wèn)題的基本理論、方法、技巧、以及常用的算法。本課程的教學(xué)安排:教學(xué)36學(xué)時(shí),實(shí)驗(yàn)20學(xué)時(shí)。參考書:《寫給大家看的C語(yǔ)言書》美:GregPerry著謝曉剛劉艷娟譯

人民郵電出版社ISBN978-7-115-21635-9《C語(yǔ)言教程》(ABookonC)美:AlKelleyIraPohl著徐波譯

機(jī)械工業(yè)出版社ISBN7-111-20213-9《C程序設(shè)計(jì)語(yǔ)言》(TheCProgrammingLanguage)

美BrianW.Kernighan等著

機(jī)械工業(yè)出版社ISBN7-111-19626-0《C程序設(shè)計(jì)》譚浩強(qiáng)著清華大學(xué)出版社《ThinkinginC++》機(jī)械工業(yè)出版社ppt課件2關(guān)于本課程的教學(xué)安排本課程的教學(xué)目的:通過(guò)對(duì)C語(yǔ)ppt課件3Let’scontinueour

Clanguagejourney!ppt課件3Let’scontinueour

Clanppt課件4ThestrategyoflearningCisa

step-by-stepapproach,first

layingasoundfoundationonprogrammingconcepts,flowofcontrol,andfunctions.ThefundamentalsofCprogrammingisasteppingstonethatwillprepareyoutoembarkonthejourneyoflearningC++andJAVA.ppt課件4Thestrategyoflearningppt課件5YouwillbegintolearnhowtowritesimpleCprogramswithprimitivedatatypes,controlstatements,functions,andarrays.ProgrammingExercisesattheendofeachchapterprovideyouwithopportunitiestoapplytheskillsonyourown.ppt課件5Youwillbegintolearnppt課件6Thetrickoflearningprogrammingispractice,practice,andpractice.ppt課件6Thetrickoflearningprppt課件7第一章概論ppt課件7第一章概論ppt課件82011年10月9日,C語(yǔ)言之父,美國(guó)著名計(jì)算機(jī)專家DennisRitchie病逝,享年70歲。在眾多的國(guó)際互動(dòng)論壇上,計(jì)算機(jī)愛(ài)好者們以特有的方式紀(jì)念這位編程語(yǔ)言的重要奠基人。許多網(wǎng)友的發(fā)帖中僅僅留下一個(gè)分號(hào);

在C語(yǔ)言中,分號(hào)標(biāo)志著一行指令語(yǔ)句的結(jié)束。網(wǎng)友們以此來(lái)悼念DennisRitchie所引領(lǐng)的時(shí)代悄然遠(yuǎn)去。雖然在C語(yǔ)言之后,C++、Java等各式各樣計(jì)算機(jī)高級(jí)語(yǔ)言層出不窮,但不少程序員仍舊認(rèn)為,C語(yǔ)言簡(jiǎn)潔、高效、靈活的特性令其具有獨(dú)特魅力?!皃pt課件82011年10月9日,C語(yǔ)言之父,美國(guó)著名計(jì)ppt課件93.計(jì)算機(jī)語(yǔ)言

所謂計(jì)算機(jī)語(yǔ)言是人類為了有效地與計(jì)算機(jī)進(jìn)行信息的傳遞、溝通,并且能讓計(jì)算機(jī)按照人類的意志進(jìn)行工作而開(kāi)發(fā)出的一種語(yǔ)言。人類使用它描述解決問(wèn)題一系列步驟,計(jì)算機(jī)能夠識(shí)別并執(zhí)行它,以達(dá)到解決問(wèn)題的目的。(1)機(jī)器語(yǔ)言(2)匯編語(yǔ)言(3)高級(jí)語(yǔ)言

在此,請(qǐng)注意,計(jì)算機(jī)只能識(shí)別并執(zhí)行二進(jìn)制機(jī)器指令的特點(diǎn)并被有改變。要想計(jì)算機(jī)執(zhí)行匯編程序或者高級(jí)語(yǔ)言程序就必須將該程序“轉(zhuǎn)換”(編譯或解釋)成機(jī)器指令程序,方可執(zhí)行。ppt課件93.計(jì)算機(jī)語(yǔ)言ppt課件10Languageabstractionpyramid1stGeneration,MachineLanguage,0101010112ndG. AssemblyLanguageHumanLanguage3rdG.StructuredLanguages,C,Fortran4thG.OOPLanguages,C++,Javappt課件10Languageabstractionpyppt課件114.翻譯方式編譯程序或解釋程序?qū)Ω呒?jí)語(yǔ)言程序(或匯編語(yǔ)言程序)進(jìn)行“翻譯”處理,使它成為機(jī)器指令程序,才能提交計(jì)算機(jī)執(zhí)行。其核心是將高級(jí)語(yǔ)言(或匯編語(yǔ)言)轉(zhuǎn)換成“機(jī)器指令程序”。下面分別介紹這兩種處理方式。(1)解釋方式使用解釋程序(Interpreter)將高級(jí)語(yǔ)言程序的語(yǔ)句逐條“翻譯”成機(jī)器指令并逐條提交計(jì)算機(jī)執(zhí)行,直至程序結(jié)束(如圖1-5所示)。ppt課件114.翻譯方式ppt課件12(2)編譯方式

所謂編譯方式是分兩步進(jìn)行的首先通過(guò)編譯程序(Compiler)對(duì)整個(gè)高級(jí)語(yǔ)言程序進(jìn)行編譯,它包括翻譯和查錯(cuò)(詞法分析、語(yǔ)法和語(yǔ)義分析、生成和優(yōu)化目標(biāo)程序)。出現(xiàn)錯(cuò)誤時(shí),停止編譯,報(bào)告錯(cuò)誤,不生成目標(biāo)程序,待修改源程序后,再進(jìn)行編譯,直到最終得到正確的目標(biāo)程序。然后使用鏈接程序(Linker)對(duì)目標(biāo)程序進(jìn)行鏈接,得到可執(zhí)行的程序,這時(shí)才能將可執(zhí)行程序提交計(jì)算機(jī)執(zhí)行(如圖1-6所示)

VC++和TurboC均是以編譯方式進(jìn)行工作的。ppt課件12(2)編譯方式ppt課件131.2算法及其表示

1.2.1算法的概念和特點(diǎn)我們?cè)谑褂糜?jì)算機(jī)解決實(shí)際問(wèn)題的時(shí)候,通常按如下步驟進(jìn)行:1.分析問(wèn)題,找出解決問(wèn)題的模型。2.根據(jù)模型,設(shè)計(jì)出適合計(jì)算機(jī)特點(diǎn)的處理方法即算法。3.選擇適合的計(jì)算機(jī)語(yǔ)言,進(jìn)行編程以實(shí)現(xiàn)算法。4.上機(jī)編輯、調(diào)試、運(yùn)行所編制的程序,得到結(jié)果。5.對(duì)結(jié)果進(jìn)行分析,整理出文字材料即文檔。ppt課件131.2算法及其表示ppt課件14一個(gè)合理的算法具有以下特點(diǎn):

1.有窮性:一個(gè)算法應(yīng)該是“有限”個(gè)步驟的,而不能是“無(wú)限“個(gè)步驟的。也就是說(shuō)經(jīng)過(guò)有限個(gè)步驟的處理以后,算法應(yīng)該結(jié)束。

2.確定性:算法中的每一個(gè)步驟的含義都是確定的、唯一的,不能具有其他的含義或可被理解成其他的含義。

3.有輸入:可有零個(gè)或多個(gè)輸入。輸入是用來(lái)在一個(gè)算法的執(zhí)行過(guò)程中,向它提供處理對(duì)象(數(shù)據(jù))或控制算法執(zhí)行過(guò)程的信息的。

4.有輸出:可有一個(gè)或多個(gè)輸出。它是算法執(zhí)行的結(jié)果的輸出。沒(méi)有輸出的算法是一個(gè)無(wú)效的算法。

5.有效性:算法的每一步驟都可有效地執(zhí)行。ppt課件14一個(gè)合理的算法具有以下特點(diǎn):ppt課件151.2.2如何表示一個(gè)算法

表示一個(gè)算法的方法很多,如自然語(yǔ)言法、傳統(tǒng)流程圖法、N-S流程圖法、偽代碼法等,理論上都可用來(lái)表示算法,但是效率上有很大差異。例如:M=5!,要求M的值。自然語(yǔ)言法描述算法如下:①設(shè)定變量M,M置初值為1,設(shè)定變量I,置初值為1。②如果I的值小于6,則執(zhí)行③,否則執(zhí)行④。③將M乘以I并置于M中存放,將I中的值加1并置于I中存放,再執(zhí)行②。④將M中的值輸出。

用傳統(tǒng)流程圖法描述算法如圖1-7所示:用N-S流程圖描述算法如圖1-8所示:

ppt課件151.2.2如何表示一個(gè)算法ppt課件16結(jié)構(gòu)化程序設(shè)計(jì)

人們經(jīng)過(guò)長(zhǎng)期的實(shí)踐,不斷地總結(jié)經(jīng)驗(yàn),提出了結(jié)構(gòu)化程序設(shè)計(jì)方法,將算法的描述歸納為三種基本結(jié)構(gòu)的順序組合,即順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。它們的共同特點(diǎn)是:只有一個(gè)入口,只有一個(gè)出口,每個(gè)基本結(jié)構(gòu)中的每一部分都有機(jī)會(huì)被執(zhí)行,結(jié)構(gòu)內(nèi)部不存在死循環(huán)。使用三種基本結(jié)構(gòu)描述的算法是結(jié)構(gòu)化的算法,按照結(jié)構(gòu)化算法編寫出來(lái)的程序具有良好的可讀性和可維護(hù)性。需要說(shuō)明的是傳統(tǒng)流程圖使用幾何圖形、流程線、文字說(shuō)明(見(jiàn)表1-1)來(lái)描述一個(gè)算法,美國(guó)學(xué)者I.Nassi和B.Shneiderman在論文《Flowcharttechniquesforstructuredprogramming》提出了用N-S流程圖又稱盒圖(三種基本結(jié)構(gòu)對(duì)照表見(jiàn)表1-2)描述算法的方法。ppt課件16結(jié)構(gòu)化程序設(shè)計(jì)ppt課件17《Flowcharttechniquesforstructuredprogramming》I.NassiB.ShneidermanStateUniversityofNewYorkUniversityofMarylandppt課件17《Flowcharttechniquesppt課件18ppt課件18ppt課件191.3C語(yǔ)言基本知識(shí)1.3.1C語(yǔ)言的發(fā)展歷史及特點(diǎn)

1.C語(yǔ)言程序結(jié)構(gòu)緊湊、語(yǔ)言簡(jiǎn)潔。

2.C語(yǔ)言的數(shù)據(jù)類型豐富。

3.C語(yǔ)言的運(yùn)算符豐富,有多達(dá)44種運(yùn)算符,(見(jiàn)附錄III)。

4.C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言。

5.C語(yǔ)言是處于匯編語(yǔ)言和高級(jí)語(yǔ)言之間的程序設(shè)計(jì)語(yǔ)言,即中級(jí)語(yǔ)言。

6.C語(yǔ)言可移植性好

7.C語(yǔ)言的語(yǔ)法限制不太嚴(yán)格。ppt課件191.3C語(yǔ)言基本知識(shí)ppt課件201.3.2C語(yǔ)言的標(biāo)識(shí)符與關(guān)鍵字在C語(yǔ)言程序中,標(biāo)識(shí)符和關(guān)鍵字都屬于程序的基本語(yǔ)法單位。正確地使用標(biāo)識(shí)符和關(guān)鍵字對(duì)于程序的編制是至關(guān)重要的。

1.標(biāo)識(shí)符標(biāo)識(shí)符一般是指用戶或系統(tǒng)定義的符號(hào)名、變量名、數(shù)組名、類型名、函數(shù)名、文件名等。C語(yǔ)言規(guī)定標(biāo)識(shí)符由字母、數(shù)字、下劃線組成,必須以字母或下劃線開(kāi)頭。大寫字母小寫字母被認(rèn)為是不同的字符,在標(biāo)識(shí)符中不能含有其它字符,也不能跨行書寫。例如,合法的標(biāo)識(shí)符如下:a_1name_x123worker

World_1_Wolf

非法的標(biāo)識(shí)符如下:1abcname,1x123n&a12To-medate..1TurboC規(guī)定標(biāo)識(shí)符長(zhǎng)度不超過(guò)32個(gè)字符,超過(guò)32個(gè)字符的部分無(wú)效。

ppt課件201.3.2C語(yǔ)言的標(biāo)識(shí)符與關(guān)鍵字ppt課件21用戶在定義標(biāo)識(shí)符的時(shí)候應(yīng)注意:

①不要與系統(tǒng)預(yù)定義的標(biāo)識(shí)符或關(guān)鍵字相同。如:用戶不要定義printf作為用戶標(biāo)識(shí)符,因?yàn)橄到y(tǒng)已經(jīng)將其預(yù)先定義為格式輸出函數(shù)的標(biāo)識(shí)符,以免引起沖突。

②盡可能直觀地定義標(biāo)識(shí)符,也就是說(shuō),從所定義的標(biāo)識(shí)符的字面上就能夠了解其含義,以方便以后的使用。ppt課件21用戶在定義標(biāo)識(shí)符的時(shí)候應(yīng)注意:ppt課件222.關(guān)鍵字

C語(yǔ)言中的關(guān)鍵字又稱保留字,它是由C的編譯程序預(yù)定義的、具有特定含義的單詞,用戶不可將其定義成自己的標(biāo)識(shí)符使用。C的關(guān)鍵字有以下32個(gè):

autobreakcasecharconst

continuedefaultdodoubleelse

enumexternfloatforgoto

ifintlongregisterreturn

shortsignedsizeofstaticstruct

switchtypedefunionunsignedvoid

volatilewhile

ppt課件222.關(guān)鍵字

C語(yǔ)言中的關(guān)鍵字又稱保ppt課件231.3.3C語(yǔ)言的基本結(jié)構(gòu)

1.C語(yǔ)言程序由一個(gè)或多個(gè)函數(shù)組成,其中有且只有一個(gè)主函數(shù),名為main()。

2.函數(shù)由函數(shù)說(shuō)明和函數(shù)體組成。其中函數(shù)名命名應(yīng)符合標(biāo)識(shí)符的規(guī)定,函數(shù)體應(yīng)以花括弧“{”開(kāi)始,并以“}”結(jié)束。

3.函數(shù)體由C語(yǔ)言的“語(yǔ)句”組成,每條語(yǔ)句必須以“;”結(jié)尾。

4.C語(yǔ)言程序的語(yǔ)句書寫格式自由,一行內(nèi)可以寫一條或多條語(yǔ)句,也可將一條語(yǔ)句寫在多行上,但關(guān)鍵字、標(biāo)識(shí)符、字符串作為一個(gè)整體不能分寫在兩行上。

5.在C語(yǔ)言程序中,可以在任何位置成對(duì)地使用/*和*/對(duì)程序進(jìn)行注釋,注釋的作用是利用文字信息對(duì)程序進(jìn)行說(shuō)明或注解,以便人們?cè)陂喿x程序時(shí)理解程序的功能,注釋部分在程序的運(yùn)行時(shí)不執(zhí)行。例1.3ppt課件231.3.3C語(yǔ)言的基本結(jié)構(gòu)ppt課件24在屏幕上顯示“Hello,C!”字符串。main()

/*主函數(shù)*/{

/*函數(shù)體開(kāi)始*/printf(″Hello,C!″);

/*在屏幕上顯示字符串*/}

/*函數(shù)體結(jié)束*/ppt課件24在屏幕上顯示“Hello,C!”字符串。ppt課件25main()/*主函數(shù)*/{/*主函數(shù)體開(kāi)始*/inta,b,c;/*定義三個(gè)整型變量名*/printf(“Hello,C!”);/*屏幕輸出字符串*/scanf(“%d%d”,&a,&b);/*從鍵盤輸入兩個(gè)數(shù),分別給a和b這兩個(gè)變量*/c=add(a,b);/*調(diào)用用戶定義的函數(shù)add,并將函數(shù)值置于變量c中*/printf(“%d\n”,c);/*屏幕輸出變量c的值*/}/*主函數(shù)體結(jié)束*/add(inta,intb)/*用戶自定義標(biāo)識(shí)符add作為函數(shù)名,有兩個(gè)參數(shù)a和b*/{/*用戶自定義函數(shù)的函數(shù)體*/inty;/*定義一個(gè)整型變量名y*/y=a+b;/*將a+b的值置于y中*/returny;/*將y的值返回*/}/*用戶自定義函數(shù)的函數(shù)體結(jié)束*/ppt課件25main()ppt課件26

加強(qiáng)對(duì)C語(yǔ)言程序基本結(jié)構(gòu)的理解,對(duì)今后的學(xué)習(xí)會(huì)有很大幫助。建議:初學(xué)者除了注意對(duì)書本知識(shí)的學(xué)習(xí)以外,要多觀察、多思考、多做自己的“作品”(不在于復(fù)雜程度,只要是自己的)、多做上機(jī)練習(xí),堅(jiān)持一段時(shí)間,培養(yǎng)起自己的興趣,有了興趣就意味著成功的開(kāi)始。

ppt課件26加強(qiáng)對(duì)C語(yǔ)言程序基本結(jié)構(gòu)的理解ppt課件27第一章C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)知識(shí)1.1概述

1.1.1信息的表示

1.數(shù)制十進(jìn)制:

日常使用的數(shù)制。二進(jìn)制、八進(jìn)制、十六進(jìn)制:

計(jì)算機(jī)中使用的數(shù)制。ppt課件27第一章C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)知識(shí)1.1概述ppt課件28

不同數(shù)制間的轉(zhuǎn)換:

二、八、十六進(jìn)制轉(zhuǎn)換成十進(jìn)制的方法是

--------按位權(quán)法展開(kāi)。例:二進(jìn)制轉(zhuǎn)換成八、十六進(jìn)制的方法是

--------分組法(三位、四位一組)。例:八、十六進(jìn)制轉(zhuǎn)換成二進(jìn)制的方法是

--------直接法(直接將八、十六進(jìn)制數(shù)字符號(hào)轉(zhuǎn)換成二進(jìn)制數(shù)字符號(hào))。例:十進(jìn)制轉(zhuǎn)換成二、八、十六進(jìn)制間的方法是

--------整數(shù)部分除法取余,小數(shù)部分乘法取整。例:(101.01)2=1×22+0×21+1×

20+0×

2-1+1×

2-2=(5.25)10↑小數(shù)點(diǎn)位置

(1a.2)16=1×

161+10×160+2×

16-1=(26.125)10↑小數(shù)點(diǎn)位置

(1010111.011)2=(001010111.011)2

=(127.3)8(1010111.011)2=(01010111.0110)2

=(57.6)16

轉(zhuǎn)換時(shí)應(yīng)注意:分別對(duì)整數(shù)和小數(shù)部分進(jìn)行分組。整數(shù)部分:從小數(shù)點(diǎn)開(kāi)始,向左三位(四位)一組,不夠三位(四位)時(shí),高位充零。小數(shù)部分:從小數(shù)點(diǎn)開(kāi)始,向右三位(四位)一組,不夠三位(四位)時(shí),低位充零。最后將各組數(shù)據(jù)轉(zhuǎn)換成相應(yīng)數(shù)制的符號(hào)即可。(a5)16=(10100101)2建議:二、八、十六進(jìn)制間的轉(zhuǎn)換應(yīng)利用二進(jìn)制作為過(guò)渡,這樣做來(lái)得簡(jiǎn)單。例:求(a5)16的八進(jìn)制表示。(a5)16=(10100101)2=(010100101)2=(245)8(28.125)10對(duì)應(yīng)的二進(jìn)制數(shù)是(11100.001)2

。整數(shù)部分:28小數(shù)部分:0.125

余數(shù)整數(shù)2…….0

最低位

14282…….072…….132…….1

1

最高位0.125×2=0.25….0

最高位0.25×2=0.5….00.5×2=1.0….1

最低位ppt課件28不同數(shù)制間的轉(zhuǎn)換:(101.0ppt課件29

數(shù)據(jù)

數(shù)值數(shù)據(jù):二進(jìn)制非數(shù)值數(shù)據(jù):編碼定點(diǎn)法浮點(diǎn)法西文:ASCII,BCD漢字:國(guó)標(biāo)碼圖形有符定點(diǎn)無(wú)符定點(diǎn)2.數(shù)據(jù)的編碼通常在計(jì)算機(jī)中用8個(gè)、16個(gè)、32個(gè)….等固定個(gè)數(shù)的二進(jìn)制位來(lái)表示某一個(gè)數(shù)據(jù)。計(jì)算機(jī)中常見(jiàn)的數(shù)據(jù)分為兩種即數(shù)值數(shù)據(jù)和非數(shù)值數(shù)據(jù)。ppt課件29

數(shù)據(jù)

數(shù)值ppt課件30數(shù)值型數(shù)據(jù):

通常在計(jì)算機(jī)中用8個(gè)、16個(gè)、32個(gè)二進(jìn)制位來(lái)表示數(shù)值型數(shù)據(jù)。小數(shù)點(diǎn)的位置總是隱含的,以節(jié)省空間。但小數(shù)點(diǎn)的位置可以是固定的或可變的。前者稱為定點(diǎn)數(shù),后者稱為浮點(diǎn)數(shù)。

(1)定點(diǎn)數(shù)(在計(jì)算機(jī)中整數(shù)是按定點(diǎn)數(shù)格式存放的)定點(diǎn)數(shù)分為:

有符定點(diǎn)數(shù)(signed)

無(wú)符定點(diǎn)數(shù)(unsigned)。

⑵浮點(diǎn)數(shù)(在計(jì)算機(jī)中小數(shù)是按浮點(diǎn)數(shù)格式存放的)

ppt課件30數(shù)值型數(shù)據(jù):ppt課件31有符定點(diǎn)整數(shù)dsdndn-1dn-2……..d1

↑↑

符號(hào)位數(shù)值部分小數(shù)點(diǎn)無(wú)符定點(diǎn)整數(shù)dndn-1dn-2…………..d1

數(shù)值部分小數(shù)點(diǎn)ppt課件31ppt課件32⑵浮點(diǎn)數(shù)(在計(jì)算機(jī)中小數(shù)是按浮點(diǎn)數(shù)格式存放的)浮點(diǎn)數(shù)格式如下:

Jsjnjn-1….j2j1dsdmdm-1…….…..d2d1↑↑

階符階碼數(shù)符尾數(shù)

ppt課件32⑵浮點(diǎn)數(shù)(在計(jì)算機(jī)中小數(shù)是按浮點(diǎn)數(shù)格式存放的ppt課件33字符型數(shù)據(jù):常用的英文編碼有ASCII碼、BCD碼

ASCII碼

ASCII碼是英文AmericanStandardCodeforInformationInterchange(美國(guó)信息交換標(biāo)準(zhǔn)編碼)的縮寫。

該編碼已經(jīng)國(guó)際標(biāo)準(zhǔn)化組織所采納。目前國(guó)際上流行的是ASCII編碼的七位版本,即用一個(gè)字節(jié)的低七位表示一個(gè)字符,高位充零。七個(gè)二進(jìn)制位可表示128種狀態(tài),故可用來(lái)表示128個(gè)不同的字符,在ASCII編碼的七位版本中表示的33個(gè)通用控制字符、95個(gè)可打印顯示的字符(其中10個(gè)數(shù)字、52個(gè)大小寫英文字母、33個(gè)標(biāo)點(diǎn)符號(hào)和運(yùn)算符號(hào))。ASCII編碼表(見(jiàn)附錄I)ppt課件33字符型數(shù)據(jù):ppt課件34字符型數(shù)據(jù):

常用的中文編碼有國(guó)家標(biāo)準(zhǔn)漢字編碼(GB碼)GB2312-80(國(guó)家標(biāo)準(zhǔn)漢字編碼)是常用的漢字編碼標(biāo)準(zhǔn),它收錄了6763個(gè)常用漢字。國(guó)標(biāo)碼使用連續(xù)的兩個(gè)字節(jié)(十六位二進(jìn)制位)表示一個(gè)漢字。根據(jù)這些漢字使用頻率的高低,分成兩部分:一級(jí)漢字共3755個(gè),即最常用的漢字。二級(jí)漢字共3008個(gè),為次常用的漢字。

GB2312-80還收錄了一些數(shù)字符號(hào)、圖形符號(hào)、外文字母等。

ppt課件34字符型數(shù)據(jù):ppt課件35數(shù)值數(shù)據(jù)的編碼方法:前面討論的是數(shù)值數(shù)據(jù)在計(jì)算機(jī)中的存放格式,下面討論對(duì)數(shù)值數(shù)據(jù)進(jìn)行編碼的方法。

①原碼表示法:(假定用八個(gè)二進(jìn)制位表示)

a=+51(a)2=(+00110011)2

則[a]原=00110011a=-127(a)2=(-01111111)2則[a]原=11111111

原碼表示法在八個(gè)二進(jìn)制位中的表示范圍:

-127≤a≤+127[+0]原=00000000[-0]原=10000000

要點(diǎn):最高位作為符號(hào)位,若正數(shù),則最高位是0,若負(fù)數(shù),則最高位是1。

ppt課件35數(shù)值數(shù)據(jù)的編碼方法:ppt課件36②反碼表示法:(假定用八個(gè)二進(jìn)制位表示)通過(guò)一個(gè)二進(jìn)制整數(shù)的原碼得到所謂反碼:當(dāng)a為正數(shù)時(shí),[a]

原=[a]

,當(dāng)a為負(fù)數(shù)時(shí),則保持[a]

原的符號(hào)位不變,其余各個(gè)二進(jìn)制位逐位取反,即0變1,1變0。如:

a=+51[a]原=00110011則[a]

=[a]

原=00110011a=-51[a]原=10110011則[a]反=11001100

反碼表示法在八個(gè)二進(jìn)制位中的表示范圍:

-127≤a≤+127[+0]反=00000000[-0]反=11111111

要點(diǎn):由原碼得到反碼。若正數(shù),則反碼與原碼相同,若負(fù)數(shù),則最高位不變,其余逐位取反。

ppt課件36②反碼表示法:(假定用八個(gè)二進(jìn)制位表示)ppt課件37③補(bǔ)碼表示法:(假定用八個(gè)二進(jìn)制位表示)通過(guò)一個(gè)二進(jìn)制整數(shù)的反碼得到所謂補(bǔ)碼:當(dāng)a≥0時(shí),[a]

補(bǔ)=[a]

,當(dāng)a<0時(shí),則[a]

補(bǔ)=[a]

反+1,如:

a=+51[a]原=00110011則[a]補(bǔ)=[a]

=[a]

原=00110011a=-51[a]原=10110011[a]反=11001100則[a]補(bǔ)=[a]

反+1

=11001101

補(bǔ)碼表示法在八個(gè)二進(jìn)制位中的表示范圍:

-128≤a≤+127[+0]補(bǔ)=00000000[-128]補(bǔ)=10000000

要點(diǎn):由反碼得到補(bǔ)碼。若正數(shù),則反碼與補(bǔ)碼相同,若負(fù)數(shù),則補(bǔ)碼等于反碼加1。在補(bǔ)碼表示法中,0的表示是唯一的,而最小值可達(dá)-128。ppt課件37③補(bǔ)碼表示法:(假定用八個(gè)二進(jìn)制位表示)ppt課件38

在上述介紹當(dāng)中我們是以八位二進(jìn)制位為例,同樣,我們可以將其推廣到十六位,三十二位等二進(jìn)制位中去,需要注意的是數(shù)值范圍將發(fā)生變化。

思考:以上介紹的原碼、反碼、補(bǔ)碼都是有符定點(diǎn)整數(shù)的編碼方式,若以八位二進(jìn)制位表示無(wú)符定點(diǎn)整數(shù),則其范圍是0到255。

在TurboC中:

有符整數(shù)是按有符定點(diǎn)整數(shù)格式的補(bǔ)碼表示的,

無(wú)符整數(shù)是按無(wú)符定點(diǎn)整數(shù)格式表示的。ppt課件38在上述介紹當(dāng)中我們是以八位二進(jìn)ppt課件39補(bǔ)碼的加、減法補(bǔ)碼的加法公式是:[a]

補(bǔ)+[b]

補(bǔ)=[a+b]

補(bǔ)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論