編碼程序?qū)W習(xí)課件_第1頁
編碼程序?qū)W習(xí)課件_第2頁
編碼程序?qū)W習(xí)課件_第3頁
編碼程序?qū)W習(xí)課件_第4頁
編碼程序?qū)W習(xí)課件_第5頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第6章

編碼6.1程序設(shè)計(jì)語言一、程序設(shè)計(jì)語言的分類1.機(jī)器語言(MachineLanguage) 機(jī)器語言,是一種用二進(jìn)制代碼表示的低級語言,是計(jì)算機(jī)直接使用的指令代碼。機(jī)器語言沒有通用性、不能移植、因機(jī)器而異,因?yàn)樘幚頇C(jī)不同指令系統(tǒng)就不同。 用機(jī)器語言編寫程序,都采用二進(jìn)制代碼形式,且所有的地址分配都以絕對地址的形式處理,存儲空間的安排、寄存器、變址的使用也都由程序員自己計(jì)劃。第6章

編碼6.1程序設(shè)計(jì)語言1第6章

編碼2.匯編語言(AssembleLanguage) 匯編語言,是一種使用助記符表示的低級語言。某一種匯編語言也是專門為某種特定的計(jì)算機(jī)系統(tǒng)而設(shè)計(jì)的。用匯編語言寫成的程序,需經(jīng)匯編程序翻譯成機(jī)器語言程序才能執(zhí)行。 匯編語言中的每條符號指令都與相應(yīng)的機(jī)器指令有對應(yīng)關(guān)系,同時(shí)又增加了一些諸如宏、符號地址等功能。雖然這種語言的命令比機(jī)器語言好記,但它并沒有改變機(jī)器語言功能弱、指令少、繁瑣、易出錯(cuò)、不能移植等的缺點(diǎn)。第6章

編碼2.匯編語言(AssembleLang2第6章

編碼3.高級語言(HighlevelLanguage) 高級語言是面向用戶的、基本上獨(dú)立于計(jì)算機(jī)種類和結(jié)構(gòu)的語言。高級語言最大的優(yōu)點(diǎn)是:形式上接近于算術(shù)語言和自然語言,概念上又接近于人們通常使用的概念。高級語言的一個(gè)命令可以代替幾條、幾十條甚至幾百條匯編語言的指令,因此,高級語言易學(xué)易用,通用性強(qiáng)且應(yīng)用廣泛。第6章

編碼3.高級語言(HighlevelLa3第6章

編碼4.第四代語言(FourthGenerationlanguage,簡稱4GL) 第四代語言(4GL)的出現(xiàn),將語言的抽象層次又提高到一個(gè)新的高度。第四代語言雖然也用不同的文法表示程序結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu),但第四代語言是在更高一級抽象的層次上表示這些結(jié)構(gòu)。用第四代語言編碼時(shí)只需說明“做什么”,而不需描述算法細(xì)節(jié)。第6章

編碼4.第四代語言(FourthGener4第6章

編碼二、程序設(shè)計(jì)語言的特點(diǎn) 1.名字說明

2.類型說明

3.初始化

4.程序?qū)ο蟮木植啃?/p>

5.程序模塊

6.循環(huán)控制結(jié)構(gòu)

7.分支控制給構(gòu)

8.異常處理

9.獨(dú)立編譯

第6章

編碼二、程序設(shè)計(jì)語言的特點(diǎn)5第6章

編碼三、程序設(shè)計(jì)語言的選擇

程序設(shè)計(jì)語言的選擇常從以下幾個(gè)方面考慮: (1)項(xiàng)目的應(yīng)用領(lǐng)域

(2)算法與計(jì)算的復(fù)雜性

(3)數(shù)據(jù)結(jié)構(gòu)的復(fù)雜性

(4)效率

(5)可移植性

(6)程序設(shè)計(jì)人員的水平

(7)構(gòu)造系統(tǒng)的模式第6章

編碼三、程序設(shè)計(jì)語言的選擇6第6章

編碼6.2編碼風(fēng)格

編碼風(fēng)格實(shí)際上是一種編碼原則。從20世紀(jì)70年代以來,編碼的目標(biāo)從強(qiáng)調(diào)效率轉(zhuǎn)變到強(qiáng)調(diào)清晰。與此相應(yīng),編碼風(fēng)格也從追求“聰明”和“技巧”,變?yōu)樘岢昂喢鳌焙汀爸苯印?。人們逐漸認(rèn)識到,良好的編碼風(fēng)格能在一定程度上彌補(bǔ)程序設(shè)計(jì)語言存在的缺點(diǎn)。反之,如果不注意編碼風(fēng)格,即使使用了結(jié)構(gòu)化的現(xiàn)代語言,也很難寫出高質(zhì)量的程序。第6章

編碼6.2編碼風(fēng)格7第6章

編碼一、代碼文檔化:指編碼時(shí)適當(dāng)選擇標(biāo)識符的名字、適當(dāng)安排注釋和注重程序的整個(gè)組織形式。二、數(shù)據(jù)說明:程序或模塊在其可執(zhí)行部分的前面都集中了一些說明語句,出于閱讀理解和維護(hù)的要求,最好使其規(guī)范化,使說明的先后次序固定。三、語句構(gòu)造:每條語句都應(yīng)當(dāng)簡單而直接,同時(shí)也不應(yīng)為了追求運(yùn)行效率而使代碼復(fù)雜化,這樣會減低程序的可讀性。四、輸入/輸出:源程序的輸入輸出風(fēng)格必須滿足運(yùn)行工程學(xué)的需要。第6章

編碼一、代碼文檔化:指編碼時(shí)適當(dāng)選擇標(biāo)識符的8第6章

編碼6.3程序效率 盡管效率是值得追求的目標(biāo),但不應(yīng)為了非必需的效率提高而犧牲代碼的清晰性、可讀性和正確性。應(yīng)記住下面三條準(zhǔn)則。(1)效率是一種性能需求,目標(biāo)值應(yīng)當(dāng)在需求分析階段給出。軟件效率應(yīng)以需求為準(zhǔn),不應(yīng)以人力所及為準(zhǔn)。(2)好的設(shè)計(jì)可以提高效率。(3)代碼效率與代碼的簡單性相關(guān)。

第6章

編碼6.3程序效率9第6章

編碼一、代碼效率

(1)應(yīng)先簡化算術(shù)和邏輯的表達(dá)式。

(2)仔細(xì)研究嵌套的循環(huán),以確定是否有語句可以從內(nèi)層往外移。

(3)盡量避免使用多維數(shù)組。

(4)盡量避免使用指針和復(fù)雜的列表。

(5)使用執(zhí)行時(shí)間短的算術(shù)運(yùn)算。

(6)即使語言允許,一般也不要采用混合數(shù)據(jù)類型。

(7)盡量使用整數(shù)表達(dá)式和布爾表達(dá)式。第6章

編碼一、代碼效率10第6章

編碼二、存儲器效率 采用結(jié)構(gòu)化程序設(shè)計(jì),將程序功能合理分塊,使每個(gè)模塊或一組密切相關(guān)模塊的程序體積大小與每頁的容量相匹配,可減少頁面調(diào)度、減少內(nèi)外存交換,提高存儲器效率。 在微型計(jì)算機(jī)系統(tǒng)中,存儲器的容量對軟件設(shè)計(jì)和編碼的制約比較大。因此要選擇可生成較短目標(biāo)代碼且存儲壓縮性能優(yōu)良的編譯程序,有時(shí)需要采用匯編語言編程。第6章

編碼二、存儲器效率11第6章

編碼三、輸入/輸出的效率(1)所有輸入/輸出都應(yīng)該有緩沖,以減少過多的通信次數(shù)。

(2)對輔存(如磁盤),應(yīng)選用最簡單的訪問方法。

(3)輔存的輸入/輸出,應(yīng)該以塊為單位進(jìn)行。

(4)終端和打印機(jī)的輸入/輸出,應(yīng)當(dāng)考慮設(shè)備的特性,以提高輸入/輸出的質(zhì)量和速度。

(5)不應(yīng)當(dāng)采用不能被人們所理解的超高效的輸入/輸出。第6章

編碼三、輸入/輸出的效率12演講完畢,謝謝觀看!演講完畢,謝謝觀看!13第6章

編碼6.1程序設(shè)計(jì)語言一、程序設(shè)計(jì)語言的分類1.機(jī)器語言(MachineLanguage) 機(jī)器語言,是一種用二進(jìn)制代碼表示的低級語言,是計(jì)算機(jī)直接使用的指令代碼。機(jī)器語言沒有通用性、不能移植、因機(jī)器而異,因?yàn)樘幚頇C(jī)不同指令系統(tǒng)就不同。 用機(jī)器語言編寫程序,都采用二進(jìn)制代碼形式,且所有的地址分配都以絕對地址的形式處理,存儲空間的安排、寄存器、變址的使用也都由程序員自己計(jì)劃。第6章

編碼6.1程序設(shè)計(jì)語言14第6章

編碼2.匯編語言(AssembleLanguage) 匯編語言,是一種使用助記符表示的低級語言。某一種匯編語言也是專門為某種特定的計(jì)算機(jī)系統(tǒng)而設(shè)計(jì)的。用匯編語言寫成的程序,需經(jīng)匯編程序翻譯成機(jī)器語言程序才能執(zhí)行。 匯編語言中的每條符號指令都與相應(yīng)的機(jī)器指令有對應(yīng)關(guān)系,同時(shí)又增加了一些諸如宏、符號地址等功能。雖然這種語言的命令比機(jī)器語言好記,但它并沒有改變機(jī)器語言功能弱、指令少、繁瑣、易出錯(cuò)、不能移植等的缺點(diǎn)。第6章

編碼2.匯編語言(AssembleLang15第6章

編碼3.高級語言(HighlevelLanguage) 高級語言是面向用戶的、基本上獨(dú)立于計(jì)算機(jī)種類和結(jié)構(gòu)的語言。高級語言最大的優(yōu)點(diǎn)是:形式上接近于算術(shù)語言和自然語言,概念上又接近于人們通常使用的概念。高級語言的一個(gè)命令可以代替幾條、幾十條甚至幾百條匯編語言的指令,因此,高級語言易學(xué)易用,通用性強(qiáng)且應(yīng)用廣泛。第6章

編碼3.高級語言(HighlevelLa16第6章

編碼4.第四代語言(FourthGenerationlanguage,簡稱4GL) 第四代語言(4GL)的出現(xiàn),將語言的抽象層次又提高到一個(gè)新的高度。第四代語言雖然也用不同的文法表示程序結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu),但第四代語言是在更高一級抽象的層次上表示這些結(jié)構(gòu)。用第四代語言編碼時(shí)只需說明“做什么”,而不需描述算法細(xì)節(jié)。第6章

編碼4.第四代語言(FourthGener17第6章

編碼二、程序設(shè)計(jì)語言的特點(diǎn) 1.名字說明

2.類型說明

3.初始化

4.程序?qū)ο蟮木植啃?/p>

5.程序模塊

6.循環(huán)控制結(jié)構(gòu)

7.分支控制給構(gòu)

8.異常處理

9.獨(dú)立編譯

第6章

編碼二、程序設(shè)計(jì)語言的特點(diǎn)18第6章

編碼三、程序設(shè)計(jì)語言的選擇

程序設(shè)計(jì)語言的選擇常從以下幾個(gè)方面考慮: (1)項(xiàng)目的應(yīng)用領(lǐng)域

(2)算法與計(jì)算的復(fù)雜性

(3)數(shù)據(jù)結(jié)構(gòu)的復(fù)雜性

(4)效率

(5)可移植性

(6)程序設(shè)計(jì)人員的水平

(7)構(gòu)造系統(tǒng)的模式第6章

編碼三、程序設(shè)計(jì)語言的選擇19第6章

編碼6.2編碼風(fēng)格

編碼風(fēng)格實(shí)際上是一種編碼原則。從20世紀(jì)70年代以來,編碼的目標(biāo)從強(qiáng)調(diào)效率轉(zhuǎn)變到強(qiáng)調(diào)清晰。與此相應(yīng),編碼風(fēng)格也從追求“聰明”和“技巧”,變?yōu)樘岢昂喢鳌焙汀爸苯印?。人們逐漸認(rèn)識到,良好的編碼風(fēng)格能在一定程度上彌補(bǔ)程序設(shè)計(jì)語言存在的缺點(diǎn)。反之,如果不注意編碼風(fēng)格,即使使用了結(jié)構(gòu)化的現(xiàn)代語言,也很難寫出高質(zhì)量的程序。第6章

編碼6.2編碼風(fēng)格20第6章

編碼一、代碼文檔化:指編碼時(shí)適當(dāng)選擇標(biāo)識符的名字、適當(dāng)安排注釋和注重程序的整個(gè)組織形式。二、數(shù)據(jù)說明:程序或模塊在其可執(zhí)行部分的前面都集中了一些說明語句,出于閱讀理解和維護(hù)的要求,最好使其規(guī)范化,使說明的先后次序固定。三、語句構(gòu)造:每條語句都應(yīng)當(dāng)簡單而直接,同時(shí)也不應(yīng)為了追求運(yùn)行效率而使代碼復(fù)雜化,這樣會減低程序的可讀性。四、輸入/輸出:源程序的輸入輸出風(fēng)格必須滿足運(yùn)行工程學(xué)的需要。第6章

編碼一、代碼文檔化:指編碼時(shí)適當(dāng)選擇標(biāo)識符的21第6章

編碼6.3程序效率 盡管效率是值得追求的目標(biāo),但不應(yīng)為了非必需的效率提高而犧牲代碼的清晰性、可讀性和正確性。應(yīng)記住下面三條準(zhǔn)則。(1)效率是一種性能需求,目標(biāo)值應(yīng)當(dāng)在需求分析階段給出。軟件效率應(yīng)以需求為準(zhǔn),不應(yīng)以人力所及為準(zhǔn)。(2)好的設(shè)計(jì)可以提高效率。(3)代碼效率與代碼的簡單性相關(guān)。

第6章

編碼6.3程序效率22第6章

編碼一、代碼效率

(1)應(yīng)先簡化算術(shù)和邏輯的表達(dá)式。

(2)仔細(xì)研究嵌套的循環(huán),以確定是否有語句可以從內(nèi)層往外移。

(3)盡量避免使用多維數(shù)組。

(4)盡量避免使用指針和復(fù)雜的列表。

(5)使用執(zhí)行時(shí)間短的算術(shù)運(yùn)算。

(6)即使語言允許,一般也不要采用混合數(shù)據(jù)類型。

(7)盡量使用整數(shù)表達(dá)式和布爾表達(dá)式。第6章

編碼一、代碼效率23第6章

編碼二、存儲器效率 采用結(jié)構(gòu)化程序設(shè)計(jì),將程序功能合理分塊,使每個(gè)模塊或一組密切相關(guān)模塊的程序體積大小與每頁的容量相匹配,可減少頁面調(diào)度、減少內(nèi)外存交換,提高存儲器效率。 在微型計(jì)算機(jī)系統(tǒng)中,存儲器的容量對軟件設(shè)計(jì)和編碼的制約比較大。因此要選擇可生成較短目標(biāo)代碼且存儲壓縮性能優(yōu)良的編譯程序,有時(shí)需要采用匯編語言編

溫馨提示

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

最新文檔

評論

0/150

提交評論