程序設(shè)計(jì)語言的構(gòu)造基礎(chǔ)與定義_第1頁
程序設(shè)計(jì)語言的構(gòu)造基礎(chǔ)與定義_第2頁
程序設(shè)計(jì)語言的構(gòu)造基礎(chǔ)與定義_第3頁
程序設(shè)計(jì)語言的構(gòu)造基礎(chǔ)與定義_第4頁
程序設(shè)計(jì)語言的構(gòu)造基礎(chǔ)與定義_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第三章程序設(shè)計(jì)語言的構(gòu)造基礎(chǔ)與程序設(shè)計(jì)語言的構(gòu)造基礎(chǔ)與定義定義3.1 程序設(shè)計(jì)語言的構(gòu)造基礎(chǔ) 程序設(shè)計(jì)語言的基本功能是定義運(yùn)算對(duì)象和對(duì)對(duì)象的運(yùn)算。 程序設(shè)計(jì)語言中一般有兩類對(duì)象: 數(shù)據(jù)型對(duì)象和程序型對(duì)象。對(duì)對(duì)象的描述包括:對(duì)象的命名對(duì)象的屬性對(duì)象的組合對(duì)對(duì)象的控制與管理 對(duì)運(yùn)算的描述包括: 運(yùn)算的定義 復(fù)合規(guī)則 運(yùn)算順序的控制。3.1.1 對(duì)象的名字、屬性與會(huì)聚 對(duì)象的名字:使用標(biāo)識(shí)符來表示對(duì)象。 對(duì)象的屬性: 名字代表一個(gè)或一片存儲(chǔ)單元,有時(shí)代表單元的內(nèi)容(右值),有時(shí)代表單元的地址(左值)。 名字具有類型屬性,表明它的數(shù)值類型。 無類型語言:語言的對(duì)象的類型在運(yùn)行時(shí)才能決定,并且任何運(yùn)算可

2、以運(yùn)用于任何對(duì)象,這樣的語言稱為無類型語言,否則為有類型語言。 強(qiáng)類型語言(顯類型語言):對(duì)象的類型可在程序正文中顯式?jīng)Q定。 弱類型語言(隱類型語言):需要到運(yùn)行時(shí)候才能決定對(duì)象的類型。名字可以代表對(duì)象的結(jié)構(gòu)。這種屬性稱為名字的種屬。名字有作用域范圍。作用域定義名字的使用范圍。匯聚:對(duì)象的名字和它的某一具體性質(zhì)的結(jié)合稱為匯聚,匯聚的時(shí)間稱為匯聚時(shí)刻。兩種匯聚時(shí)刻:執(zhí)行時(shí)的匯聚和編譯時(shí)的匯聚。3.1.2 數(shù)據(jù)對(duì)象及存儲(chǔ)表示初等類型數(shù)據(jù):整型、實(shí)型、邏輯型、字符型等。數(shù)組: var A:arrayl1. u1 ,l2. u2,.,ln.un of integer各維的長(zhǎng)度di=ui-li+1 (1

3、in) 設(shè)a為數(shù)組A的首地址,則數(shù)組元素Ai1,i2,.in的地址D為:D=a+(i1-l1)d2d3.dn+( i2-l2)d3d4.dn+.+( in-1-ln-1)dn+ (in-ln)以上數(shù)組的信息若在編譯時(shí)能確定則為靜態(tài)數(shù)組,否則為動(dòng)態(tài)數(shù)組,保存這些信息的表格稱為內(nèi)情向量表。 記錄(或結(jié)構(gòu)):允許不同類型數(shù)據(jù)復(fù)合的組織形式。集合:由可區(qū)別的離散元素構(gòu)成。注意與數(shù)學(xué)上的集合概念的區(qū)別。既語言上集合中的元素有序的概念。它的存儲(chǔ)方式可用各種鏈表結(jié)構(gòu)、數(shù)組結(jié)構(gòu)等。 指針與動(dòng)態(tài)數(shù)據(jù)結(jié)構(gòu):指針變量的內(nèi)容是指向其它數(shù)據(jù)單元的地址。指針變量的主要作用是在運(yùn)行時(shí)建立動(dòng)態(tài)的數(shù)據(jù)區(qū)和建立棧、隊(duì)列、鏈表等動(dòng)

4、態(tài)數(shù)據(jù)結(jié)構(gòu)。 文件:表示輸入輸出設(shè)備上的數(shù)據(jù)組織。一般有順序文件、索引順序文件和隨機(jī)存取文件。文件存取單位是邏輯記錄。3.1.3 運(yùn)行時(shí)的存儲(chǔ)管理運(yùn)行時(shí)需存儲(chǔ)管理的主要數(shù)據(jù)有:運(yùn)行程序、系統(tǒng)運(yùn)行程序、用戶定義的各種數(shù)據(jù)、用于過程調(diào)用的連接數(shù)據(jù)、輸入輸出緩沖區(qū)和一些系統(tǒng)數(shù)據(jù)。 影響存儲(chǔ)管理策略的因素有:a.語言中可使用的數(shù)據(jù)結(jié)構(gòu)形式。b.語言中定義的程序結(jié)構(gòu)。 一般編譯技術(shù)采用3種存儲(chǔ)分配策略:靜態(tài)分配、棧式動(dòng)態(tài)分配和堆式動(dòng)態(tài)分配。3.1.4 運(yùn)算及運(yùn)算的復(fù)合兩類運(yùn)算:語言自定義的運(yùn)算和用戶定義的運(yùn)算。運(yùn)算的3種結(jié)構(gòu):前綴式、后綴式及中綴式。 運(yùn)算式中對(duì)象的兼容性問題:類型檢查與轉(zhuǎn)換。3.1.5

5、運(yùn)算的順序控制 表達(dá)式內(nèi)部運(yùn)算順序的控制: 運(yùn)算符間的優(yōu)先級(jí) 同級(jí)運(yùn)算符間的結(jié)合規(guī)則。 語言順序的控制:定義各種控制語句。(語句間的隱含控制關(guān)系) 程序段間的執(zhí)行順序控制:過程調(diào)用與過程返回。主要解決數(shù)據(jù)傳遞問題。3.1.6參數(shù)傳遞 參數(shù)傳遞方法:傳地址:子程序?yàn)槊恳粋€(gè)形參開辟一個(gè)單元,用于存放相應(yīng)實(shí)參的地址,當(dāng)實(shí)參為表達(dá)式或常數(shù)時(shí),則存放表示它們值的臨時(shí)單元的地址。 傳值:子程序?yàn)槊恳粋€(gè)形參開辟一個(gè)單元,用于存放相應(yīng)實(shí)參的值。傳結(jié)果:子程序?yàn)槊恳粋€(gè)形參開辟兩個(gè)單元,一個(gè)用于存放相應(yīng)實(shí)參的地址,另一個(gè)存放返回的結(jié)果。傳值結(jié)果:它是傳結(jié)果與傳值的結(jié)合。 傳名: 在主調(diào)程序中設(shè)置計(jì)算實(shí)參地址與右值

6、的形實(shí)替換子程序。在子程序中為相應(yīng)實(shí)參開辟一個(gè)形式單元,用于存放該實(shí)參的替換子程序的入口地址。在子程序執(zhí)行過程中,每當(dāng)要向某形參賦值或取值時(shí),就調(diào)用相應(yīng)于該形參的替換子程序,以獲得相應(yīng)實(shí)參地址或值。3.2 語言的語法、語義和語用 語法:確定哪些字符串組成該語言的合式程序。 語義:通過語言的基本概念描述程序的含義靜態(tài)語義:無須執(zhí)行就可推導(dǎo)出的性質(zhì)。動(dòng)態(tài)語義:運(yùn)行時(shí)才能識(shí)別的性質(zhì)。 語用:使語言的基本概念與語言的外界發(fā)生聯(lián)系。 語言定義分析的目標(biāo): 定義語法、語義規(guī)則,確定分析后作轉(zhuǎn)換的形式。規(guī)定動(dòng)態(tài)語義與語用的區(qū)別,確定面向語言的抽象機(jī)器的對(duì)象與操作,規(guī)定由抽象機(jī)對(duì)象操作到硬件系統(tǒng)的映射。3.2.1語法性質(zhì) 程序設(shè)計(jì)語言的語法規(guī)則分級(jí): 基本符號(hào)的拼寫規(guī)則(標(biāo)識(shí)符、關(guān)鍵字、等)。 常數(shù)的表示與解釋規(guī)則 具體語法和抽象文法:抽象文法是規(guī)定程序的合成結(jié)構(gòu),而不管具體表示細(xì)節(jié)。3.2.2語義性質(zhì) 基本語義性質(zhì): 可在其上進(jìn)行操作的數(shù)據(jù)對(duì)象與結(jié)構(gòu)。 關(guān)于表達(dá)式和其它動(dòng)作語句的操作與構(gòu)造規(guī)則。 提供控制流、程序片段動(dòng)態(tài)合成的構(gòu)造。3.3 程序環(huán)境與抽象機(jī)狀態(tài) 程序環(huán)境:指某一狀態(tài)的數(shù)據(jù)對(duì)象集合和過程調(diào)用的層次結(jié)構(gòu)。 抽象機(jī)狀態(tài):數(shù)據(jù)對(duì)象與存在于特定時(shí)刻值的結(jié)合,尚未完成的過程調(diào)用的層次結(jié)構(gòu)以及程序正文中下一個(gè)操作的表示。 對(duì)象存在的范圍:在對(duì)象存在期間,程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論