freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

(黑龍江大學(xué))編譯原理讀書工程(推薦閱讀)-預(yù)覽頁

2024-11-10 00:20 上一頁面

下一頁面
 

【正文】 X=a?Y結(jié)束預(yù)測(cè)分析程序框圖文法分析:語法制導(dǎo)翻譯和中間代碼生成: 開始讀入字符輸入表達(dá)式進(jìn)行掃描分詞判斷是字母還是數(shù)字還是運(yùn)算符判斷語句是否合法運(yùn)算符,判斷運(yùn)算符的種類若為雙目運(yùn)算符則入符號(hào)棧,單目則出棧,修改狀態(tài)位,若為(直接入棧,為)則一直出棧直到(為止根據(jù)變量在符號(hào)表中的位置來判斷它的屬性和值如果當(dāng)前字符為 09的數(shù)字,則將其添加到結(jié)果(后綴表達(dá)式)串中。2009,04.第二篇:《編譯原理課程設(shè)計(jì)》讀書工程方案“編譯原理課程設(shè)計(jì)”讀書工程環(huán)節(jié)方案一、目的與要求“編譯原理”是計(jì)算機(jī)科學(xué)技術(shù)專業(yè)與軟件工程專業(yè)的必修課程,是一門理論性和實(shí)踐性都很強(qiáng)的課程。在讀書工程環(huán)節(jié),學(xué)生可以通過閱讀相關(guān)的參考書目,對(duì)課程設(shè)計(jì)的五個(gè)主要部分:構(gòu)造識(shí)別符號(hào)串的自動(dòng)機(jī)、詞法分析程序的構(gòu)造、語法分析程序的構(gòu)造、中間語言的生成程序、編譯程序的代碼生成程序中的任意一個(gè)題目進(jìn)行深入的分析探討和總結(jié),并提交相應(yīng)的讀書工程報(bào)告。主要由語言基礎(chǔ)知識(shí)、詞法分析、語法分析、中間代碼生成、代碼優(yōu)化、目標(biāo)代碼生成、符號(hào)表的構(gòu)造和運(yùn)行時(shí)存儲(chǔ)空間的組織等部分組成。本書從介紹編譯的原理性概念開始,然后通過構(gòu)建一個(gè)簡(jiǎn)單的一遍編譯器來逐一解釋這些概念。本書一 直被世界各地的著名高等院校和科研機(jī)構(gòu)(如貝爾實(shí)驗(yàn)室、哥倫比亞大學(xué)、普 林斯頓大學(xué)和斯坦福大學(xué)等)廣泛用作本科生和研究生編譯原理與技術(shù)課程的 教材,本書對(duì)我國(guó)計(jì)算機(jī)教育界也具有重大影響。把本書討論的概念統(tǒng)一起來,就是一個(gè)完整的可運(yùn)行的編譯器,它使用每一章所討論的技術(shù)進(jìn)行開發(fā),用C語言寫成。它主要以Pascal類語言為模型,介紹過程式語言的編譯程序構(gòu)造原理和實(shí)現(xiàn)技術(shù)。本書上一版自1986年出版以來,被世界各地的著名高等院校和研究機(jī)構(gòu)(包括美國(guó)哥倫比亞大學(xué)、斯坦福大學(xué)、哈佛大學(xué)、普林斯頓大學(xué)、貝爾實(shí)驗(yàn)室)作為本科生和研究生的編譯原理課程的教材。本書全面介紹了編譯器的設(shè)計(jì),深入地探討了編譯器設(shè)計(jì)方面的重要主題,包括詞法分析、語法分析、語法制導(dǎo)定義和語法制導(dǎo)翻譯、運(yùn)行時(shí)刻環(huán)境、目標(biāo)代碼生成、代碼優(yōu)化技術(shù)、并行性檢測(cè)以及過程間分析技術(shù),并強(qiáng)調(diào)編譯技術(shù)在軟件設(shè)計(jì)和開發(fā)中的廣泛應(yīng)用。編譯原理也是大學(xué)計(jì)算機(jī)專業(yè)的必修課程。通過詳盡的源代碼剖析和實(shí)例講解,循序漸進(jìn)地啟發(fā)學(xué)生完成課程設(shè)計(jì)。本書使用優(yōu)秀的開源java編譯器gjc作為編譯教學(xué)的基礎(chǔ)平臺(tái),通過分析一個(gè)真正實(shí)用的現(xiàn)代編譯系統(tǒng),把編譯理論應(yīng)用到實(shí)際的工程實(shí)踐中。從學(xué)習(xí)編譯器的結(jié)構(gòu)來掌握理論,并通過編程技術(shù)將編譯理論融合于實(shí)踐中。本書的第二部分ˉ一高級(jí)課題,包括面向?qū)ο笳Z言和函數(shù)式語言的編譯技術(shù),無用信息收集,循環(huán)優(yōu)化,靜態(tài)單賦值表,指令調(diào)度以及高速緩沖存儲(chǔ)器的分級(jí)優(yōu)化,則適合作為第二學(xué)期的課程。本書可作為高等院校編譯技術(shù)課程的教材、教師參考書以及編譯技術(shù)研究人員的參考資料。本書可作為高等(理、工)院校計(jì)算機(jī)科學(xué)(或工程)專業(yè)的教材,或作為教師、研究生、高年級(jí)學(xué)生或軟件工程技術(shù)人員的參考書。第二章開發(fā)了一個(gè)縮微的編譯器,并介紹了很多重要的概念,這些概念將在后面的各個(gè)章節(jié)中深入介紹。第五章介紹了語法制導(dǎo)定義和語法制導(dǎo)翻譯的基本思想。第九章介紹了代碼優(yōu)化技術(shù),包括流圖、數(shù)據(jù)流分析框架以及求解這些框架的迭代算法。這章的重點(diǎn)是數(shù)值計(jì)算代碼,這些代碼具有對(duì)多維數(shù)組進(jìn)行遍歷的緊致循環(huán)。“一個(gè)編譯程序就是一個(gè)語言翻譯程序,語言翻譯程序把一種語言(源語言)書寫的程序翻譯成另一種語言(目標(biāo)語言)的等價(jià)程序”。但是我覺得我們很幸運(yùn),因?yàn)槔蠋熢谟邢薜恼n程中盡量將知識(shí)點(diǎn)以比較容易接受的方式給我們講解,教我們用簡(jiǎn)單的方法理解記憶不同的知識(shí),對(duì)于我們提出的問題,無論課上或是課外,老師一直是不厭其煩,甚至利用課余時(shí)間為我們講解重要的難題。這個(gè)逐漸遞進(jìn),逐漸解決問題的過程對(duì)我來說是收獲很大的?!比欢颐靼鬃约弘m然對(duì)編譯有了一定的了解,我懂得了文法的分析,學(xué)會(huì)了構(gòu)造確定和非確定有限自動(dòng)機(jī),學(xué)會(huì)了LL(1)文法和LR(0)文法等,但是并沒有完全掌握,對(duì)于這些知識(shí)點(diǎn)的實(shí)質(zhì)性和其他方面,更是認(rèn)識(shí)不深。增加了聲明變量類型、類型賦值判定和聲明的變量被引用時(shí)作用域的判斷。從而使得我們的實(shí)驗(yàn)結(jié)果呈現(xiàn)的更加清晰和易懂。通過這次實(shí)驗(yàn),我們能夠從根源處了解到了我們所學(xué)的內(nèi)容,并且基于我們理解之后的輸出。如果每個(gè)進(jìn)來的單詞都能在最短的時(shí)間和最少的匹配次數(shù)內(nèi)找到其入口,則效率將得到很大程度上的提高。將詞法分析器設(shè)計(jì)成供語法分析器調(diào)用的子程序。我們還做了附加功能,即編譯后端,有中間代碼優(yōu)化,生成目標(biāo)代碼匯編語言。編譯器將源程序(source language)編寫的程序作為輸入,翻譯產(chǎn)生目標(biāo)語言(target language)機(jī)器代碼的等價(jià)程序。將詞法分析器設(shè)計(jì)成供語法分析器調(diào)用的子程序。若語法正確,則用語法制導(dǎo)翻譯法進(jìn)行語義翻譯;生成并打印出語法樹;若語法錯(cuò)誤,要求指出出錯(cuò)性質(zhì)和出錯(cuò)位置(行號(hào))。本程序采用C語言以面向?qū)ο蟮乃枷刖帉懀绦蚍譃閹撞糠郑涸~法分析(Lexical),語法分析(Grammer),目標(biāo)代碼生成(ObjectCode)。工程文件總體上是按照九個(gè)類的格局分為十個(gè)文件,分別是九個(gè)類的聲明文件和實(shí)現(xiàn)文件。然后Grammer類的語法分析程序就根據(jù)tokenList中的Token進(jìn)行語法分析,生成語法樹,最后打印語法樹。Lexical類對(duì)外提供的函數(shù)主要有:static public int RecogId(string str, int i),static public int RecogDig(string str,int i),static public int RecogOperator(string str, int i),static public int RecogBound(string str, int i),以上幾個(gè)函數(shù)構(gòu)成了詞法分析的骨架,在Lexical類中還有其他成員變量和函數(shù),主要作為這三個(gè)函數(shù)處理過程的中間步驟,為這三個(gè)函數(shù)服務(wù)。關(guān)鍵字作為特殊標(biāo)識(shí)符處理,把它們預(yù)先安排在一張表格中(稱為關(guān)鍵字表),當(dāng)掃描程序識(shí)別出標(biāo)識(shí)符時(shí),查關(guān)鍵字表。語法分析的功能是在詞法分析的基礎(chǔ)上將單詞序列組合成各類語法短語,如“程序”,“語句”,“表達(dá)式” 數(shù)據(jù)結(jié)構(gòu)下圖為實(shí)現(xiàn)語法分析的類Grammar,屬性與方法的作用都已說明 在此處鍵入]下面終結(jié)符與非終結(jié)符意義B程序開始Z 數(shù)據(jù)類型,如int,char,float等V 標(biāo)識(shí)符S 語句P 語句塊E 加減算術(shù)表達(dá)式D 逗號(hào)表達(dá)式T 乘除算術(shù)表達(dá)式C 關(guān)系表達(dá)式L 邏輯表達(dá)式Q 標(biāo)識(shí)符或圓括號(hào)e 表示空i 表示標(biāo)識(shí)符 a)函數(shù)文法BZV()S[[在此處鍵入]b)語句塊文法PSP|eS{P} c)語句文法表達(dá)式語句文法SV=Egoto語句文法Si:SSgoto iif語句文法Sif(E)S[else S]while語句文法Swhile(E)S聲明語句文法SZVDD,VD|=ED|e d)表達(dá)式文法ET|E+T|ETTF|T*F|T/FCC|CL|C==C|C=LLQ|Lamp。 數(shù)據(jù)結(jié)構(gòu) [在此處鍵入]public static void AddErrorMessage(int lineno,string content)函數(shù)用作在發(fā)現(xiàn)錯(cuò)誤時(shí)保存錯(cuò)誤信息以及行號(hào)。測(cè)試錯(cuò)誤檢測(cè),程序缺少分號(hào),錯(cuò)誤列表中顯示該行缺少語句結(jié)束標(biāo)志39。陳火旺.《程序設(shè)計(jì)語言編譯原理》(第3版).北京:、美 Alfred Ravi Sethi Jeffrey ,姜守旭譯.《編譯原理》.24 [在此處鍵入]北京:、美 Kenneth .《編譯原理及實(shí)踐》.北京:、金成植著.《編譯程序構(gòu)造原理和實(shí)現(xiàn)技術(shù)》.北京:、體會(huì)和建議。開始著手寫代碼224。在充分了解了語法分析需要哪些信息時(shí),我才真正了解了詞法分析的工作內(nèi)容和目標(biāo),才知道詞法分析需要完成哪些任務(wù)獲取到哪些信息。雖然之前寫的詞法分析的代碼已經(jīng)完成了詞法分析的需求,也是根據(jù)DFA的原理編寫的,但是在代碼結(jié)構(gòu)上卻難以體現(xiàn),在對(duì)書上的根據(jù)已知DFA寫代碼的例子進(jìn)行了詳細(xì)的研究之后,發(fā)現(xiàn)自己的代碼并沒有像書上那樣完全按照所依據(jù)的DFA各狀態(tài)轉(zhuǎn)移的關(guān)系進(jìn)行編寫,所以對(duì)代碼進(jìn)行了重寫,像書上一樣嚴(yán)格按照狀態(tài)之間轉(zhuǎn)移的方式進(jìn)行編寫,將狀態(tài)劃分成11個(gè)狀態(tài),狀態(tài)分別按1~11進(jìn)行標(biāo)注,程序也按照DFA來編寫,也實(shí)現(xiàn)了詞法分析的功能。由于C語言給出的文法有左遞歸存在,于是自己將存在左遞歸的文法改寫成EBNF的形式,并據(jù)此進(jìn)行代碼編寫。首先最基本的成果是完成了課程設(shè)計(jì)的任務(wù),實(shí)現(xiàn)了編譯器的詞法分析和語法分析階段的功能,詞法分析主要能過濾注釋、分析出語法分析階段需要的Token并滿足語法階段的所有要求,能夠判別詞法分析階段是否出錯(cuò)和出錯(cuò)類型和位置。如:以前在編譯原理課上雖然知道First集合和Follow集合怎么求的,卻不知道First集合和Follow集合到底是干什么的,通過編寫程序自己明白了他們的實(shí)際作用,使得自己不僅知其然還知其所以然,從而使得自己加深了對(duì)知識(shí)點(diǎn)的理解和掌握。[
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1