![2 2 1高級語言的一般特性 - 高級語言的一般特性_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/24/33079ad4-c273-4fd1-9b71-1e0f9316632d/33079ad4-c273-4fd1-9b71-1e0f9316632d1.gif)
![2 2 1高級語言的一般特性 - 高級語言的一般特性_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/24/33079ad4-c273-4fd1-9b71-1e0f9316632d/33079ad4-c273-4fd1-9b71-1e0f9316632d2.gif)
![2 2 1高級語言的一般特性 - 高級語言的一般特性_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/24/33079ad4-c273-4fd1-9b71-1e0f9316632d/33079ad4-c273-4fd1-9b71-1e0f9316632d3.gif)
![2 2 1高級語言的一般特性 - 高級語言的一般特性_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/24/33079ad4-c273-4fd1-9b71-1e0f9316632d/33079ad4-c273-4fd1-9b71-1e0f9316632d4.gif)
![2 2 1高級語言的一般特性 - 高級語言的一般特性_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/24/33079ad4-c273-4fd1-9b71-1e0f9316632d/33079ad4-c273-4fd1-9b71-1e0f9316632d5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、1,編譯原理,第二章 高級語言及其語法描述,2,第二章 高級語言及其語法描述,程序語言的定義 高級語言的一般特性 程序語言的語法描述,3,第二章 高級語言及其語法描述,程序語言的定義 高級語言的一般特性 程序語言的語法描述,4,2.2 高級語言的一般特性,高級語言的分類 程序結(jié)構(gòu) 數(shù)據(jù)結(jié)構(gòu)與操作 語句與控制結(jié)構(gòu),5,數(shù)據(jù)類型與操作,一個數(shù)據(jù)類型通常包括三種要素 用于區(qū)別這種類型數(shù)據(jù)對象的屬性 這種類型的數(shù)據(jù)對象可以具有的值 可以作用于這種類型的數(shù)據(jù)對象的操作,6,數(shù)據(jù)類型與操作,初等數(shù)據(jù)類型 數(shù)值類型 整型、實型、復(fù)數(shù)、雙精度 運算:+,-,*,/等 邏輯類型 true、false 布爾運算:
2、,等 字符類型:符號處理 指針類型,7,測試:標(biāo)識符與名字,下面哪種說法正確? ( ) A. 標(biāo)識符是語義概念,名字是語法概念 B. 標(biāo)識符是語法概念,名字是語義概念,8,標(biāo)識符與名字,標(biāo)識符 以字母開頭的,由字母數(shù)字組成的字符串 標(biāo)識符與名字兩者有本質(zhì)區(qū)別 標(biāo)識符是語法概念 名字有確切的意義和屬性,9,Jordan,標(biāo)識符,名字,10,標(biāo)識符與名字,名字 值:單元中的內(nèi)容 屬性:類型和作用域 名字的性質(zhì)的說明方式 由說明語句來明確規(guī)定的 隱含說明 FORTRAN 以I,J,K,N為首的名字代表整型,否則為實型 動態(tài)確定 走到哪里,是什么,算什么,11,數(shù)據(jù)結(jié)構(gòu),數(shù)組 邏輯上,數(shù)組是由同一類型
3、數(shù)據(jù)所組成的某種n維矩形結(jié)構(gòu),沿著每一維的距離,稱為下標(biāo) 數(shù)組可變與不可變 編譯時能否確定其存貯空間的大小 訪問 給出數(shù)組名和下標(biāo)值 存放方式 按行存放,按列存放,12,數(shù)組元素地址計算,數(shù)組A10,20的A1,1為a,各維下標(biāo)為1,按行存放,那么Ai,j地址為: a+(i-1)*20+(j-1) 數(shù)組元素地址計算公式,13,數(shù)組元素地址計算,設(shè)A為n維數(shù)組,按行存放,每個元素寬度為w lowi 為第i維 的下界 upi 為第i維 的上界 ni 為第i維 可取值的個數(shù)(ni = upi -lowi + 1), base為A的第一個元素相對地址 元素Ai1,i2,ik相對地址公式 (i1 n2+
4、i2)n3+i3)nk+ik)w + base-(low1 n2+low2)n3+low3)nk+lowk)w,記為Con,14,內(nèi)情向量,內(nèi)情向量 維數(shù),各維的上、下限,首地址,以及數(shù)組(元素)的類型,15,記錄,邏輯上說,記錄結(jié)構(gòu)由已知類型的數(shù)據(jù)組合在一起的一種結(jié)構(gòu) record char NAME20; integer AGE; bool MARRIED; 訪問:復(fù)合名 CARDk.NAME 存儲:連續(xù)存放 域的地址計算 相對于記錄結(jié)構(gòu)起點的相對數(shù)OFFSET,CARD1000,16,字符串、表格、棧,字符串:符號處理、公式處理 表格:本質(zhì)上是一種記錄結(jié)構(gòu) 線性表:一組順序化的記錄結(jié)構(gòu)
5、棧:一種線性表,后進先出,POP, PUSH,17,抽象數(shù)據(jù)類型,抽象就是忽略一個主題中與當(dāng)前問題無關(guān)的那些方面,以便更充分地注意與當(dāng)前問題有關(guān)的方面 提取和表現(xiàn)事物的核心特性,忽略細節(jié),18,抽象數(shù)據(jù)類型,抽象數(shù)據(jù)類型(Abstract Data Type) A set of data values and associated operations that are precisely specified independent of any particular implementation.,美國標(biāo)準(zhǔn)與技術(shù)研究院NIST /dads/HTML/abs
6、tractDataType.html,19,抽象數(shù)據(jù)類型,一個抽象數(shù)據(jù)類型包括 數(shù)據(jù)對象的一個集合 作用于這些數(shù)據(jù)對象的抽象運算的集合 這種類型對象的封裝,即,除了使用類型中所定義的運算外,用戶不能對這些對象進行操作 程序設(shè)計語言對抽象數(shù)據(jù)類型的支持 Ada通過程序包(package)提供了數(shù)據(jù)封裝的支持,20,package STACKS is type ELEM is private; type STACK is limited private; procedure push (S: in out STACK; E: in ELEM); procedure pop (S: in out S
7、TACK; E: out ELEM); end STACK;,package body STACKS is procedure push(S: in out STACK; E: in ELEM); begin 實現(xiàn)細節(jié) end push; procedure pop (S: in out STACK; E: out ELEM); begin 實現(xiàn)細節(jié) end pop; end;,規(guī)范說明,程序包體,21,抽象數(shù)據(jù)類型,一個抽象數(shù)據(jù)類型包括 數(shù)據(jù)對象的一個集合 作用于這些數(shù)據(jù)對象的抽象運算的集合 這種類型對象的封裝,即,除了使用類型中所定義的運算外,用戶不能對這些對象進行操作 程序設(shè)計語言對抽象
8、數(shù)據(jù)類型的支持 Ada通過程序包(package)提供了數(shù)據(jù)封裝的支持 Smalltalk、C+和Java則通過類(Class)對抽象數(shù)據(jù)類型提供支持,22,class Car int color_number; int door_number; int speed; push_break ( ) add_oil ( ) class Trash_Car extends car double amount; fill_trash ( ) ,23,2.2 高級語言的一般特性,高級語言的分類 程序結(jié)構(gòu) 數(shù)據(jù)結(jié)構(gòu)與操作 語句與控制結(jié)構(gòu),24,語句與控制結(jié)構(gòu),表達式 表達式由運算量(也稱操作數(shù),即數(shù)據(jù)引
9、用或函數(shù)調(diào)用)和算符(操作符)組成 形式:中綴、前綴、后綴 X*Y -A P 表達式形成規(guī)則,25,算符的優(yōu)先次序,一般的規(guī)定 PASCAL:左結(jié)合A+B+C=(A+B)+C FORTRAN:對于滿足左、右結(jié)合的算符可任取一種,如A+B+C就可以處理成(A+B)+C,也可以處理成A+(B+C) 注意兩點 代數(shù)性質(zhì)能引用到什么程度視具體的語言不同而不同 在數(shù)學(xué)上成立的代數(shù)性質(zhì)在計算機上未必完全成立,26,語句,賦值語句 A := B 名字左值:該名字代表的那個單元(地址)稱為該名字的左值(所代表的存貯單元的地址) 右值:一個名字的值稱為該名字的右值(所代表的存貯單元的內(nèi)容),27,測試:左值與右值,在C語言中,下面選項只具有右值、不具有左值的是 ( )。 A. 變量 B. 下標(biāo)變量 C. a + 5 D. 指針變量P E. *P (P是指針變量),28,語句,控制語句,無條件轉(zhuǎn)移語句 goto L,條件語句 if B then S if B then S1 else S2,循環(huán)語句 while B do S repeat S until B for i:=E1 step E2 until E3 do S,過程調(diào)用語句 call P(X1, X2, . ,Xn),返回語句 r
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度園林工具租賃合同匯編
- 2025年度國際貿(mào)易合同履約監(jiān)督與合規(guī)審查合同
- 2025年度企業(yè)社會責(zé)任與可持續(xù)發(fā)展顧問服務(wù)合同
- 2025年度企業(yè)慶典場地租賃及現(xiàn)場布置合同
- 2025年度跨區(qū)域農(nóng)業(yè)貸款合同補充條款
- 2025年度新能源車輛銷售合同履約擔(dān)保范本
- 2025年度考研輔導(dǎo)機構(gòu)學(xué)生就業(yè)指導(dǎo)服務(wù)合同
- 2025年度國際貿(mào)易代理傭金結(jié)算合同
- 2025年度能源管理系統(tǒng)合法技術(shù)服務(wù)合同標(biāo)準(zhǔn)協(xié)議
- 2025年度人力資源居間招聘合同訴訟范本
- 2024年江西銅業(yè)集團有限公司招聘筆試參考題庫含答案解析
- 《鋁及鋁合金產(chǎn)品殘余應(yīng)力評價方法》
- IATF-16949:2016質(zhì)量管理體系培訓(xùn)講義
- 記賬憑證封面直接打印模板
- 人教版八年級美術(shù)下冊全冊完整課件
- 北京房地產(chǎn)典當(dāng)合同
- 安慶匯辰藥業(yè)有限公司高端原料藥、醫(yī)藥中間體建設(shè)項目環(huán)境影響報告書
- 檔案工作管理情況自查表
- 初中英語人教版 八年級上冊 單詞默寫表 漢譯英
- pcs-9611d-x說明書國內(nèi)中文標(biāo)準(zhǔn)版
- 畢業(yè)論文-基于51單片機的智能LED照明燈的設(shè)計
評論
0/150
提交評論