《計(jì)算機(jī)科學(xué)概論》第6章-程序設(shè)計(jì)語(yǔ)言_第1頁(yè)
《計(jì)算機(jī)科學(xué)概論》第6章-程序設(shè)計(jì)語(yǔ)言_第2頁(yè)
《計(jì)算機(jī)科學(xué)概論》第6章-程序設(shè)計(jì)語(yǔ)言_第3頁(yè)
《計(jì)算機(jī)科學(xué)概論》第6章-程序設(shè)計(jì)語(yǔ)言_第4頁(yè)
《計(jì)算機(jī)科學(xué)概論》第6章-程序設(shè)計(jì)語(yǔ)言_第5頁(yè)
已閱讀5頁(yè),還剩60頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

主要內(nèi)容第6章程序設(shè)計(jì)語(yǔ)言歷史回顧傳統(tǒng)的程序設(shè)計(jì)概念過(guò)程單元語(yǔ)言實(shí)現(xiàn)面向?qū)ο蟪绦蛟O(shè)計(jì)并發(fā)活動(dòng)的程序設(shè)計(jì)說(shuō)明型程序設(shè)計(jì)歷史回顧早期的程序設(shè)計(jì)語(yǔ)言機(jī)器語(yǔ)言--最早的程序設(shè)計(jì)語(yǔ)言調(diào)試:找到程序的錯(cuò)誤并改正

20世紀(jì)40年代,研究人員開(kāi)始簡(jiǎn)化程序設(shè)計(jì)的記號(hào)系統(tǒng)

助記符號(hào)-->數(shù)字形式的指令例如:MOVR5,R6-->4056一個(gè)稍微復(fù)雜的例子:P173L10

標(biāo)識(shí)符匯編語(yǔ)言:是表示程序的助記符系統(tǒng)統(tǒng)稱(chēng)為匯編語(yǔ)言匯編器:負(fù)責(zé)翻譯工作歷史回顧早期的程序設(shè)計(jì)語(yǔ)言第一代程序設(shè)計(jì)語(yǔ)言:機(jī)器語(yǔ)言第二代程序設(shè)計(jì)語(yǔ)言:匯編語(yǔ)言它的出現(xiàn)是在研究程序設(shè)計(jì)語(yǔ)言技術(shù)方面邁出了巨大的一步匯編語(yǔ)言仍然存在著缺點(diǎn):匯編語(yǔ)言使用的原語(yǔ)本質(zhì)上與機(jī)器語(yǔ)言是一樣的,差別只是在語(yǔ)法上。因此,匯編語(yǔ)言的程序生來(lái)就是機(jī)器相關(guān)的,即不同的體系架構(gòu)的計(jì)算機(jī)需要使用不同的匯編語(yǔ)言。

程序員雖然不必使用數(shù)字指令編程序,但是還是必須采用機(jī)器指令的模式去思考問(wèn)題。歷史回顧在設(shè)計(jì)一個(gè)產(chǎn)品時(shí),最終構(gòu)造一個(gè)產(chǎn)品的原語(yǔ)不一定是在設(shè)計(jì)該產(chǎn)品時(shí)應(yīng)該使用的原材料。比較好的做法是,設(shè)計(jì)過(guò)程中使用高級(jí)原語(yǔ)。設(shè)計(jì)完成之后,再把高級(jí)原語(yǔ)翻譯成與實(shí)現(xiàn)細(xì)節(jié)相關(guān)的較低級(jí)的原語(yǔ)。按照這種思想,人們開(kāi)發(fā)了第三代程序設(shè)計(jì)語(yǔ)言。

擁有較好的與機(jī)器無(wú)關(guān)性,即不依賴(lài)于特定的計(jì)算機(jī)例如:FORTRAN、COBOL歷史回顧使用高級(jí)語(yǔ)言編寫(xiě)程序時(shí),我們需要一種稱(chēng)為翻譯程序的程序。

翻譯程序負(fù)責(zé)把高級(jí)的原語(yǔ)翻譯成機(jī)器語(yǔ)言的程序每一種高級(jí)語(yǔ)言都必須要配有一個(gè)翻譯程序,它已經(jīng)是語(yǔ)言的一個(gè)組成部分翻譯程序有兩類(lèi):編譯程序解釋程序目前,編程序通常都使用編譯型的語(yǔ)言編輯程序+編譯程序發(fā)展第三代程序設(shè)計(jì)語(yǔ)言的任務(wù)并沒(méi)有我們想象的那么簡(jiǎn)單。

目標(biāo)是讓編譯程序越來(lái)越智能,程序設(shè)計(jì)語(yǔ)言本身越來(lái)越簡(jiǎn)單程序設(shè)計(jì)范型

程序設(shè)計(jì)范型代表了在構(gòu)建問(wèn)題的解決方法時(shí)的不同方法。

范型影響了整個(gè)軟件的開(kāi)發(fā)過(guò)程。我們應(yīng)該稱(chēng)為軟件開(kāi)發(fā)范型。歷史回顧歷史回顧程序設(shè)計(jì)范型歷史回顧程序設(shè)計(jì)范型-

命令型范型(過(guò)程型)

是一種傳統(tǒng)的程序設(shè)計(jì)方法

這種范型告訴我們的程序設(shè)計(jì)方法是:先找到解決問(wèn)題的算法,然后用命令序列表示這個(gè)算法。C、Pascal、BASIC…歷史回顧程序設(shè)計(jì)范型-說(shuō)明型范型要求程序員描述要解決的問(wèn)題,而不要求找到解決問(wèn)題的算法。在這種范型設(shè)計(jì)的系統(tǒng)里,首先要發(fā)現(xiàn)一個(gè)通用的問(wèn)題求解算法,一旦這種算法找到了,以后要解決的問(wèn)題只需要按照與算法相兼容的形式描述,該算法就會(huì)自己解決該問(wèn)題。使用這種范型設(shè)計(jì)程序,困難是基礎(chǔ)性的通用算法很難找到。因此,這種范型之應(yīng)用在某些特殊的方面例如:天氣預(yù)報(bào)、專(zhuān)家系統(tǒng)歷史回顧程序設(shè)計(jì)范型-

函數(shù)型范型這種范型解決問(wèn)題的方法是,把開(kāi)發(fā)程序的過(guò)程看成將預(yù)先定義好的“黑箱”連接起來(lái)的過(guò)程。一個(gè)“黑箱”的輸出可當(dāng)作另一個(gè)“黑箱”的輸入。這些“黑箱”被數(shù)學(xué)家稱(chēng)為函數(shù),這就是稱(chēng)為函數(shù)型范型的原因。一個(gè)函數(shù)型程序設(shè)計(jì)語(yǔ)言的原語(yǔ)由初等函數(shù)(構(gòu)建塊)組成在這種范型里,程序員要做的事就是尋找一種連接初等函數(shù)的方法,使他們構(gòu)成更復(fù)雜的函數(shù),從而計(jì)算出想要的結(jié)果。歷史回顧程序設(shè)計(jì)范型-

面向?qū)ο笮头缎瓦@種范型里,數(shù)據(jù)單元被看成活動(dòng)的“對(duì)象”。傳統(tǒng)的命令型范型里,數(shù)據(jù)看作被指令操作的對(duì)象。自身不具有行為能力。數(shù)據(jù)與控制數(shù)據(jù)的代碼分離。面向?qū)ο蟮姆缎椭校瑪?shù)據(jù)與控制數(shù)據(jù)的代碼結(jié)合到一起。例如:對(duì)列表排序命令型范型中,列表被看作數(shù)據(jù)面向?qū)ο蟮姆缎椭校斜肀豢醋骺烧{(diào)用的對(duì)象歷史回顧P216

問(wèn)題與練習(xí)傳統(tǒng)的程序設(shè)計(jì)概念程序設(shè)計(jì)語(yǔ)言里的語(yǔ)句分為三類(lèi):聲明語(yǔ)句定義了程序中使用的需要自定義的術(shù)語(yǔ).命令語(yǔ)句用于描述算法里的步驟注釋就是對(duì)程序的解釋?zhuān)岣呖勺x性注釋語(yǔ)句根據(jù)需要分布在程序的各處傳統(tǒng)的程序設(shè)計(jì)概念1.Num1002.while(Num<=999)do ( gwNum除以10取余數(shù)

swNum除以100取余數(shù)后再除以

bwNum除以100取整

if(gw*gw*gw+sw*sw*sw+bw*bw*bw=Num)then (

輸出Num ) NumNum+1 )3.結(jié)束說(shuō)明Num、gw、sw、bw傳統(tǒng)的程序設(shè)計(jì)概念1.變量和數(shù)據(jù)類(lèi)型--變量高級(jí)程序設(shè)計(jì)語(yǔ)言允許存儲(chǔ)單元用描述性的名字來(lái)指稱(chēng),而不用數(shù)字地址。這種描述性的名字叫做變量。程序中需要用到的所有數(shù)據(jù)都是存儲(chǔ)在主存儲(chǔ)器的存儲(chǔ)單元里的。在機(jī)器語(yǔ)言中,是通過(guò)存儲(chǔ)單元的地址來(lái)實(shí)現(xiàn)對(duì)存儲(chǔ)單元的讀寫(xiě)的。在高級(jí)程序設(shè)計(jì)語(yǔ)言中,變量就相當(dāng)于主存中存儲(chǔ)單元的地址的別名,我們就是通過(guò)這些別名來(lái)實(shí)現(xiàn)對(duì)存儲(chǔ)單元的讀寫(xiě)的。

“把某個(gè)值存入某個(gè)變量”的含義例如:sum<--0數(shù)據(jù)類(lèi)型在定義變量時(shí),需要指明將來(lái)要存儲(chǔ)到該變量中的數(shù)據(jù)的類(lèi)別傳統(tǒng)的程序設(shè)計(jì)概念1.變量和數(shù)據(jù)類(lèi)型-基本的數(shù)據(jù)類(lèi)型整數(shù)(integer)類(lèi)型用來(lái)指稱(chēng)(存儲(chǔ))整數(shù)數(shù)據(jù)可以進(jìn)行算數(shù)運(yùn)算和比較運(yùn)算實(shí)數(shù)(real)類(lèi)型(有時(shí)稱(chēng)為浮點(diǎn)(float)類(lèi)型)用來(lái)指稱(chēng)除整數(shù)之外的數(shù)值數(shù)據(jù)字符(character)類(lèi)型用來(lái)指稱(chēng)符號(hào)組成的數(shù)據(jù)比較、查找、連接等運(yùn)算布爾(Boolean)類(lèi)型指稱(chēng)只有真和假兩種值的數(shù)據(jù)項(xiàng)傳統(tǒng)的程序設(shè)計(jì)概念1.變量和數(shù)據(jù)類(lèi)型-說(shuō)明變量的一般形式:

數(shù)據(jù)類(lèi)型變量名;例如:intHeight;intHeight,Width; intheight=100;傳統(tǒng)的程序設(shè)計(jì)概念2.數(shù)據(jù)結(jié)構(gòu)抽象的描述:數(shù)據(jù)的概念形態(tài)或布局。通俗的理解:當(dāng)相同類(lèi)型或不同類(lèi)型的一組數(shù)據(jù)結(jié)合在一起使用時(shí),可以使用某種方式將它們組織起來(lái),這種數(shù)據(jù)的組織方式就叫做數(shù)據(jù)結(jié)構(gòu)。一種常用的數(shù)據(jù)結(jié)構(gòu)----數(shù)組,數(shù)組有:同構(gòu)數(shù)組(homogeneousarray)異構(gòu)數(shù)組(heterogeneousarray)傳統(tǒng)的程序設(shè)計(jì)概念2.數(shù)據(jù)結(jié)構(gòu)-同構(gòu)數(shù)組具有相同類(lèi)型元素組成的數(shù)據(jù)塊定義數(shù)組的一般形式:類(lèi)型名數(shù)組名[i][j][k]…[n]在數(shù)組中,我們是使用下標(biāo)來(lái)標(biāo)識(shí)數(shù)組中的某個(gè)元素傳統(tǒng)的程序設(shè)計(jì)概念2.數(shù)據(jù)結(jié)構(gòu)--異構(gòu)數(shù)組其元素可以有不同的類(lèi)型的數(shù)據(jù)塊definetypeStudenttobe{ charName[8]; intAge; floatSkillRating;} (a)Studentstu1,stu2;傳統(tǒng)的程序設(shè)計(jì)概念3.常量和字面量程序中需要使用固定的預(yù)先決定的值。一個(gè)值的顯式出現(xiàn)稱(chēng)為字面量(literal)。例如:EffectiveAlt<--Altimeter+645

使用直接量不是一個(gè)好的程序設(shè)計(jì)習(xí)慣一些程序設(shè)計(jì)語(yǔ)言允許給描述性的名字賦以特定的不可改變的值,這樣的名字稱(chēng)為常量(constant)。傳統(tǒng)的程序設(shè)計(jì)概念4.賦值語(yǔ)句賦值語(yǔ)句(assignmentstatement),它把一個(gè)值賦給一個(gè)變量。這種語(yǔ)句的語(yǔ)法形式通常是,一個(gè)變量,跟一個(gè)表示賦值運(yùn)算的符號(hào),最后是指示要賦的值的表達(dá)式。 例如:Z=X+Y; Z:=X+Y;運(yùn)算符優(yōu)先(operatorprecedence) 賦值語(yǔ)句中的表達(dá)式的運(yùn)算次序是借助運(yùn)算符的優(yōu)先級(jí)實(shí)現(xiàn)的 例如:2*4+6/2重載(overloading):一個(gè)運(yùn)算符的多重使用稱(chēng)為運(yùn)算符的重載 例如:“abc”+“ok”

結(jié)果是:“abcok”傳統(tǒng)的程序設(shè)計(jì)概念5.控制語(yǔ)句是改變?cè)摮绦驁?zhí)行順序的命令型語(yǔ)句。最簡(jiǎn)單的控制語(yǔ)句是轉(zhuǎn)向語(yǔ)句(goto命令

),它類(lèi)似于機(jī)器指令JUMP采用結(jié)構(gòu)化的程序設(shè)計(jì)的方法,即包含系統(tǒng)的組織設(shè)計(jì)方法及對(duì)控制語(yǔ)句的合理使用。核心是要設(shè)計(jì)容易理解且滿(mǎn)足需求規(guī)格說(shuō)明的程序。常用的:選擇結(jié)構(gòu)(if-then-else)循環(huán)結(jié)構(gòu)(while、for)分情況結(jié)構(gòu)(switch-case)傳統(tǒng)的程序設(shè)計(jì)概念5.控制語(yǔ)句控制結(jié)構(gòu)及其在語(yǔ)言C、C++、C#和Java里的表示分情況結(jié)構(gòu)是if-then-else語(yǔ)句的一種擴(kuò)充傳統(tǒng)的程序設(shè)計(jì)概念5.控制語(yǔ)句

for結(jié)構(gòu)及其在語(yǔ)言C、C++、C#和Java里的表示另一種常用的簡(jiǎn)化了的循環(huán)結(jié)構(gòu)傳統(tǒng)的程序設(shè)計(jì)概念6.注解一種是整個(gè)注釋用特殊的記號(hào)括起來(lái)另一種是注釋用一個(gè)特殊的記號(hào)開(kāi)始,該行的后面部分全是注釋。語(yǔ)言C、C++、C#和Java用記號(hào)/*和*/括住注釋?zhuān)糜浱?hào)//開(kāi)始一個(gè)注釋直至行末。如:/*Thisiscomment.*/和//Thisiscomment.都是合法的注釋語(yǔ)句。傳統(tǒng)的程序設(shè)計(jì)概念---注釋語(yǔ)句6.注解傳統(tǒng)的程序設(shè)計(jì)概念P188

問(wèn)題與練習(xí)過(guò)程單元1.過(guò)程過(guò)程(procedure)是實(shí)現(xiàn)一個(gè)任務(wù)的一組指令,它可以作為其他程序單元的抽象工具。過(guò)程單元1.過(guò)程過(guò)程內(nèi)部可以定義變量,過(guò)程也可以使用在過(guò)程之外定義的變量。在一個(gè)過(guò)程中說(shuō)明的變量是局部變量(localvariable),這意味著它們只能在該過(guò)程內(nèi)部引用。不限制在一個(gè)程序特定部分使用的變量稱(chēng)為全局變量(globalvariable),它們?cè)谠摮绦虻娜魏蔚胤蕉际强纱嫒〉摹_^(guò)程單元過(guò)程的編寫(xiě)方法:編寫(xiě)過(guò)程時(shí),使用過(guò)程首部作為開(kāi)始語(yǔ)句,隨后是過(guò)程的實(shí)現(xiàn)細(xì)節(jié)語(yǔ)句;過(guò)程首部中給出了過(guò)程的名字,例如:proceduresum(N);

過(guò)程的使用方法:過(guò)程的使用,稱(chēng)之為“調(diào)用”

可以使用過(guò)程的名字來(lái)調(diào)用過(guò)程proceduremax(x,y)

if(x<y)thenm←y;elsem←x;returnma←5;b←7;c←max(a,b);過(guò)程單元2.參數(shù)----過(guò)程內(nèi)部的類(lèi)屬項(xiàng)形式參數(shù)(formalparameter)

定義一個(gè)過(guò)程的時(shí)候使用的參數(shù)實(shí)在參數(shù)(actualparameter)

調(diào)用一個(gè)過(guò)程時(shí)使用的參數(shù)過(guò)程單元2.參數(shù)------過(guò)程舉例過(guò)程單元2.參數(shù)如果某個(gè)過(guò)程有多個(gè)參數(shù),在調(diào)用該過(guò)程時(shí),實(shí)在參數(shù)要與形式參數(shù)必須一一對(duì)應(yīng)

即二者的個(gè)數(shù)與類(lèi)型必須完全一致實(shí)在參數(shù)與形式參數(shù)之間傳遞數(shù)據(jù)的方式:按值傳遞(passedbyvalue)按引用傳遞(passedbyreference)過(guò)程單元2.參數(shù)過(guò)程單元2.參數(shù)

參數(shù)傳遞的例子:proceduremax(x,y)

if(x<y)then(t←x;x←y;y←t;)returnxa←5;b←7;c←max(a,b);a,b,c的值是多少?過(guò)程單元3.函數(shù)

過(guò)程的目的是要產(chǎn)生一個(gè)值,而不是一個(gè)動(dòng)作。

例如:求1到N的累加和的過(guò)程將一個(gè)列表排序的過(guò)程當(dāng)過(guò)程的目的是要產(chǎn)生一個(gè)值的時(shí)候,“過(guò)程”通常是作為函數(shù)實(shí)現(xiàn)的。函數(shù)(function)是指類(lèi)似于過(guò)程的程序單元,它把一個(gè)值作為“該函數(shù)的值”傳遞給調(diào)用程序單元。過(guò)程單元3.函數(shù)過(guò)程與函數(shù)的區(qū)別:P192過(guò)程單元P193

問(wèn)題與練習(xí)語(yǔ)言實(shí)現(xiàn)如何將高級(jí)語(yǔ)言轉(zhuǎn)化為機(jī)器語(yǔ)言的過(guò)程。這個(gè)過(guò)程包含兩個(gè)大的步驟: 翻譯 連接與裝入語(yǔ)言實(shí)現(xiàn)1.翻譯過(guò)程語(yǔ)言實(shí)現(xiàn)(1)詞法分析:

詞法分析是從源程序中辨認(rèn)構(gòu)成單個(gè)實(shí)體的符號(hào)串的過(guò)程。

例如:proceduremax(x,y)

if(x<y)then(t←x;x←y;y←t;)max←x;逐個(gè)符號(hào)的讀取源程序,然后辨認(rèn)出哪些符號(hào)構(gòu)成一個(gè)單元為每個(gè)單元生成一個(gè)標(biāo)記語(yǔ)言實(shí)現(xiàn)(2)語(yǔ)法分析:語(yǔ)法分析比較麻煩。早期,語(yǔ)法分析技術(shù)不太先進(jìn),所以程序設(shè)計(jì)語(yǔ)言曾經(jīng)是固定格式語(yǔ)言。今天,大多是自由格式語(yǔ)言。

語(yǔ)法分析的單位是語(yǔ)句,因此必須區(qū)分出一個(gè)程序中的每條語(yǔ)句。在自由格式語(yǔ)言中,區(qū)分語(yǔ)句的方法:

通常使用一些特殊的符號(hào)來(lái)標(biāo)明程序的開(kāi)始和結(jié)束,以及程序中每條語(yǔ)句的開(kāi)始和結(jié)束。還可以使用類(lèi)似if、then、else之類(lèi)的關(guān)鍵字(保留字)來(lái)標(biāo)明單個(gè)語(yǔ)句的開(kāi)始語(yǔ)言實(shí)現(xiàn)(2)語(yǔ)法分析:

語(yǔ)法的分析是基于語(yǔ)法規(guī)則的。表達(dá)這些規(guī)則的方法是借助于語(yǔ)法圖。它是語(yǔ)言的語(yǔ)法結(jié)構(gòu)的圖形表示。

例如if語(yǔ)句的語(yǔ)法圖規(guī)定了if語(yǔ)句的一般格式:if-then-else偽代碼語(yǔ)句的語(yǔ)法圖需要進(jìn)一步描述的項(xiàng)(非終結(jié)符)不需要進(jìn)一步描述的項(xiàng)(終結(jié)符)語(yǔ)言實(shí)現(xiàn)(2)語(yǔ)法分析:

判斷一個(gè)特定的串是否符合一組語(yǔ)法圖的方法是根據(jù)語(yǔ)法圖為其構(gòu)造語(yǔ)法分析樹(shù)例如,使用圖6.15來(lái)分析表達(dá)式x+y*z是否合法語(yǔ)言實(shí)現(xiàn)表達(dá)式的語(yǔ)法圖語(yǔ)言實(shí)現(xiàn)語(yǔ)言實(shí)現(xiàn)(2)語(yǔ)法分析:

一個(gè)程序語(yǔ)法分析的過(guò)程實(shí)際上就是根據(jù)事先定義好的語(yǔ)法圖為源程序構(gòu)造語(yǔ)法分析樹(shù)。實(shí)際上,語(yǔ)法分析樹(shù)就是語(yǔ)法分析程序?qū)σ粋€(gè)程序的語(yǔ)法構(gòu)成的理解。因此,對(duì)于一條語(yǔ)句不允許有兩種不同的語(yǔ)法分析樹(shù)。下面這種情況是不允許的。

ifB1thenifB2thenS1elseS2if-then-else偽代碼語(yǔ)句的語(yǔ)法圖語(yǔ)言實(shí)現(xiàn)語(yǔ)句ifB1thenifB2thenS1elseS2的兩個(gè)不同的語(yǔ)法分析樹(shù)→

ifB1then(ifB2thenS1)

elseS2IfB1then(ifB2thenS1elseS2)語(yǔ)言實(shí)現(xiàn)(2)語(yǔ)法分析:當(dāng)語(yǔ)法分析程序分析聲明語(yǔ)句時(shí),它把這些語(yǔ)句里的聲明信息記錄在稱(chēng)為符號(hào)表的表里。

符號(hào)表里包含的信息:變量的名稱(chēng)、類(lèi)型、變量的數(shù)據(jù)結(jié)構(gòu)等符號(hào)表是語(yǔ)法分析程序后來(lái)判定某個(gè)語(yǔ)句是否有意義的依據(jù)例如:z←x+y

有些語(yǔ)言允許強(qiáng)制類(lèi)型轉(zhuǎn)換,即類(lèi)型之間的隱式轉(zhuǎn)換

大多數(shù)語(yǔ)言不允許,凡是不允許進(jìn)行強(qiáng)制類(lèi)型會(huì)轉(zhuǎn)換的語(yǔ)言被稱(chēng)為是強(qiáng)類(lèi)型的程序設(shè)計(jì)語(yǔ)言語(yǔ)言實(shí)現(xiàn)(3)代碼生成:語(yǔ)法分析階段完成后,已經(jīng)將各條語(yǔ)句分解成一些基本的因子。

代碼生成階段只需要將這些因子替換為事先準(zhǔn)備好的機(jī)器代碼即可。

代碼生成階段涉及到很多具體問(wèn)題,其中之一是代碼優(yōu)化代碼優(yōu)化就是如何使得這一階段生成的目標(biāo)程序有較高的執(zhí)行效率。

例如:

x←y+z; w←x+z;語(yǔ)言實(shí)現(xiàn)翻譯過(guò)程的三個(gè)步驟并不是嚴(yán)格的按照順序執(zhí)行的。語(yǔ)言實(shí)現(xiàn)2.連接和裝入 翻譯過(guò)程生成的目標(biāo)程序,雖然已經(jīng)是機(jī)器語(yǔ)言表達(dá)的了,但很少具有計(jì)算機(jī)可以執(zhí)行的形式。一個(gè)理由:大多數(shù)程序設(shè)計(jì)環(huán)境都允許一個(gè)程序的各個(gè)模塊可以作為單個(gè)程序單元在不同的時(shí)間開(kāi)發(fā)和翻譯。另外,即使一個(gè)程序作為一個(gè)單元被完整的翻譯,它的目標(biāo)程序仍很少能夠單獨(dú)執(zhí)行。因?yàn)榻^大多程序都包含對(duì)一些使用程序或者操作系統(tǒng)的服務(wù)的請(qǐng)求。語(yǔ)言實(shí)現(xiàn)語(yǔ)言實(shí)現(xiàn)3.軟件開(kāi)發(fā)包軟件開(kāi)發(fā)過(guò)程中,需要用到的程序的集合,我們稱(chēng)之為軟件開(kāi)發(fā)系統(tǒng)(軟件開(kāi)發(fā)包)。

編輯程序、翻譯程序、連接程序、調(diào)試程序等。語(yǔ)言實(shí)現(xiàn)P199

問(wèn)題與練習(xí)本章小節(jié)---歷史回顧、傳統(tǒng)程序設(shè)計(jì)概念、過(guò)程單元、語(yǔ)言實(shí)現(xiàn)歷史回顧三代程序設(shè)計(jì)語(yǔ)言、程序設(shè)計(jì)語(yǔ)言的發(fā)展趨勢(shì)匯編程序、編譯程序、解釋程序四種程序設(shè)計(jì)范型傳統(tǒng)的程序設(shè)計(jì)概念說(shuō)明語(yǔ)句變量、直接量、常量數(shù)據(jù)類(lèi)型(

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論