算法和程序設(shè)計(jì)語(yǔ)言課件_第1頁(yè)
算法和程序設(shè)計(jì)語(yǔ)言課件_第2頁(yè)
算法和程序設(shè)計(jì)語(yǔ)言課件_第3頁(yè)
算法和程序設(shè)計(jì)語(yǔ)言課件_第4頁(yè)
算法和程序設(shè)計(jì)語(yǔ)言課件_第5頁(yè)
已閱讀5頁(yè),還剩14頁(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)介

1、1一 算法與程序什么是程序?按一定的順序安排的工作即操作序列描述完成某項(xiàng)功能所涉及的對(duì)象和動(dòng)作規(guī)則計(jì)算機(jī)學(xué)科中,程序描述了計(jì)算機(jī)處理數(shù)據(jù)、解決問(wèn)題的過(guò)程程序 = 數(shù)據(jù)結(jié)構(gòu)+算法2程序包括兩方面的內(nèi)容:(1)對(duì)數(shù)據(jù)的描述:指定欲處理的數(shù)據(jù)類型和數(shù)據(jù)的組織形式,也就是數(shù)據(jù)結(jié)構(gòu)。(2)對(duì)操作的描述:對(duì)操作步驟的描述。3二 算法的概念1 什么是算法?計(jì)算機(jī)來(lái)解決的某一類問(wèn)題的方法或步驟算法是程序的核心例如:計(jì)算圓周率公式 4同一個(gè)問(wèn)題,可用不同的算法來(lái)求解算法不同,求解的效率不同選擇效率高、容易理解和編程實(shí)現(xiàn)的算法52 算法的兩個(gè)要素算法是由操作與控制結(jié)構(gòu)兩個(gè)要素組成(1)操作算術(shù)運(yùn)算:加、減、乘、除

2、等。關(guān)系運(yùn)算:大于、大于等于、小于、小于等于、等于、不等于等。邏輯運(yùn)算:與、或、非等。數(shù)據(jù)傳送:輸入、輸出、賦值等。6(a)順序結(jié)構(gòu) (b)選擇結(jié)構(gòu)(2)控制結(jié)構(gòu)各操作之間的執(zhí)行順序順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)(c)當(dāng)型循環(huán)結(jié)構(gòu) (d)直到型循環(huán)結(jié)構(gòu)783 算法的特點(diǎn)有窮性 任意一個(gè)算法在執(zhí)行有窮個(gè)計(jì)算步驟后必須終止。每一個(gè)計(jì)算步驟,必須是精確地定義、無(wú)二義性可行性 有限多個(gè)步驟應(yīng)該在一個(gè)合理的范圍內(nèi)進(jìn)行輸入 一般有0個(gè)或多個(gè)輸入,它們?nèi)∽阅骋惶囟ǖ募稀]敵?一般有若干個(gè)輸出信息,是反映對(duì)輸入數(shù)據(jù)加工后的結(jié)果。94 算法的分類(1)數(shù)值計(jì)算算法(2)非數(shù)值計(jì)算算法 105 算法的表示自然語(yǔ)言

3、流程圖N-S流程圖偽代碼計(jì)算機(jī)語(yǔ)言11流程圖采用一些圖框、線條以及文字說(shuō)明來(lái)形象地、直觀地描述算法處理過(guò)程。計(jì)算圓周率的流程圖優(yōu)點(diǎn):較好的體現(xiàn)程序設(shè)計(jì)的邏輯12第8章 算法和程序設(shè)計(jì)語(yǔ)言1、程序和算法概念2、程序設(shè)計(jì)語(yǔ)言概述系統(tǒng)軟件14操作系統(tǒng)語(yǔ)言處理程序?qū)嵱贸绦蚍g工具作用:將源程序翻譯成計(jì)算機(jī)能識(shí)別的機(jī)器語(yǔ)言程序。程序設(shè)計(jì)語(yǔ)言:機(jī)器語(yǔ)言匯編語(yǔ)言高級(jí)語(yǔ)言典型的程序設(shè)計(jì)語(yǔ)言有:FORTRAN、Pascal、C與C+、BASIC、Java、C#等。匯編程序編譯程序解釋程序151.機(jī)器語(yǔ)言由“0”、“1”二進(jìn)制代碼按一定規(guī)則組成的、能被機(jī)器直接理解、執(zhí)行的指令集合。 缺點(diǎn):編程工作量大,難學(xué)、難記

4、、難修改; 不同計(jì)算機(jī)的指令系統(tǒng)不同,機(jī)器語(yǔ)言通用性差優(yōu)點(diǎn):代碼不需要翻譯,所占空間少,執(zhí)行速度快。例如,計(jì)算A=15+10 的機(jī)器語(yǔ)言程序如下:10110000 00001111: 把15放入累加器A中00101100 00001010: 10與累加器A的值相加,結(jié)果 仍放入A中11110100: 結(jié)束,停機(jī)162.匯編語(yǔ)言使用反映機(jī)器指令功能的助記符代替機(jī)器語(yǔ)言的符號(hào)語(yǔ)言。例如用ADD表示加、SUB表示減、JMP表示程序跳轉(zhuǎn)等等。優(yōu)點(diǎn):克服了機(jī)器語(yǔ)言難讀等缺點(diǎn),保持了其編程質(zhì)量高、占存儲(chǔ)空間少,執(zhí)行速度快的優(yōu)點(diǎn)。缺點(diǎn):仍然依賴于機(jī)器,通用性差。特點(diǎn):源程序必須通過(guò)匯編程序翻譯成機(jī)器語(yǔ)言。常

5、用于過(guò)程控制等編程。例如,計(jì)算 A=15+10 的匯編語(yǔ)言程序:MOVA,15:把15放入累加器A中ADDA,10:10與累加器A相加,結(jié)果存入A中HLT:結(jié)束,停機(jī)類比:IP地址202.120.189.146機(jī)器語(yǔ)言域名匯編語(yǔ)言173.高級(jí)語(yǔ)言接近于自然語(yǔ)言的程序設(shè)計(jì)語(yǔ)言。優(yōu)點(diǎn):接近算法語(yǔ)言,易學(xué)、易掌握,可讀性好,可維護(hù)性強(qiáng),可靠性高;可移植性好,重用率高自動(dòng)化程度高,編程效率高。缺點(diǎn):源程序要通過(guò)翻譯程序翻譯成機(jī)器語(yǔ)言,代碼不最優(yōu)。例如,計(jì)算 A=15+10 的BASIC語(yǔ)言程序如下:A=15+10 15與10相加的結(jié)果放入A中PRINT A 輸出AEND 程序結(jié)束8.4.2 語(yǔ)言處理程序18機(jī)器語(yǔ)言源程序匯編語(yǔ)言源程序機(jī)器語(yǔ)言程序(目標(biāo)程序)匯編程序翻譯低級(jí)語(yǔ)言處理程序高級(jí)語(yǔ)言翻譯程序19高級(jí)語(yǔ)言

溫馨提示

  • 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)論