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

正文內(nèi)容

編譯原理課程設(shè)計(jì)任務(wù)-在線瀏覽

2024-10-25 02:17本頁(yè)面
  

【正文】 著手寫(xiě)代碼224。根據(jù)DFA及自頂向下等理論修改完善代碼等這些過(guò)程。在充分了解了語(yǔ)法分析需要哪些信息時(shí),我才真正了解了詞法分析的工作內(nèi)容和目標(biāo),才知道詞法分析需要完成哪些任務(wù)獲取到哪些信息。經(jīng)過(guò)揣摩書(shū)上的例子,自己理解和掌握了怎么設(shè)計(jì)過(guò)濾注釋和分析程序中Token的DFA,于是開(kāi)始根據(jù)設(shè)計(jì)好的DFA進(jìn)行編碼,最后經(jīng)過(guò)調(diào)試已經(jīng)可以正確地完成詞法階段的任務(wù)了。雖然之前寫(xiě)的詞法分析的代碼已經(jīng)完成了詞法分析的需求,也是根據(jù)DFA的原理編寫(xiě)的,但是在代碼結(jié)構(gòu)上卻難以體現(xiàn),在對(duì)書(shū)上的根據(jù)已知DFA寫(xiě)代碼的例子進(jìn)行了詳細(xì)的研究之后,發(fā)現(xiàn)自己的代碼并沒(méi)有像書(shū)上那樣完全按照所依據(jù)的DFA各狀態(tài)轉(zhuǎn)移的關(guān)系進(jìn)行編寫(xiě),所以對(duì)代碼進(jìn)行了重寫(xiě),像書(shū)上一樣嚴(yán)格按照狀態(tài)之間轉(zhuǎn)移的方式進(jìn)行編寫(xiě),將狀態(tài)劃分成11個(gè)狀態(tài),狀態(tài)分別按1~11進(jìn)行標(biāo)注,程序也按照DFA來(lái)編寫(xiě),也實(shí)現(xiàn)了詞法分析的功能。在寫(xiě)語(yǔ)法分析的時(shí)候,已經(jīng)對(duì)編譯器的語(yǔ)法分析的內(nèi)容有了一定的了解,所以直接進(jìn)行了理論的學(xué)習(xí)。由于C語(yǔ)言給出的文法有左遞歸存在,于是自己將存在左遞歸的文法改寫(xiě)成EBNF的形式,并據(jù)此進(jìn)行代碼編寫(xiě)。在編寫(xiě)過(guò)程中,還有一類(lèi)問(wèn)題,就是存在公共左因子,如文法expression→ var = expression | simpleexpression,左因子為ID,在分析過(guò)程中,由于已經(jīng)取出了一個(gè)ID的Token,且生成了一個(gè)IdK的節(jié)點(diǎn),但是在當(dāng)前狀態(tài)無(wú)法確定是哪一個(gè)推導(dǎo),然而IdK節(jié)點(diǎn)已經(jīng)生成,又無(wú)法回退,并且是使用自頂向下的分析方法,已經(jīng)生成的IdK在程序上方無(wú)法使用,自己通過(guò)查閱資料等途徑的學(xué)習(xí)確定了在這種情形下的處理方式:將已經(jīng)生成的IdK節(jié)點(diǎn)傳到下方的處理程序,所以TreeNode * simple_expression(TreeNode * k)、TreeNode * additive_expression(TreeNode * k)等函數(shù)都被設(shè)計(jì)成有節(jié)點(diǎn)類(lèi)型參數(shù)的函數(shù),目的就是將已經(jīng)生成的節(jié)點(diǎn)傳到下面的分析函數(shù)中去。首先最基本的成果是完成了課程設(shè)計(jì)的任務(wù),實(shí)現(xiàn)了編譯器的詞法分析和語(yǔ)法分析階段的功能,詞法分析主要能過(guò)濾注釋、分析出語(yǔ)法分析階段需要的Token并滿足語(yǔ)法階段的所有要求,能夠判別詞法分析階段是否出錯(cuò)和出錯(cuò)類(lèi)型和位置。由于在編寫(xiě)程序過(guò)程中,涉及到了正則表達(dá)式、DFA、提取公共左因子、消除左遞歸、EBNF、求First集合和Follow集合、遞歸向下分析方法以及編程語(yǔ)言方面的知識(shí),所以,通過(guò)本次的課程設(shè)計(jì)的實(shí)踐,使得自己對(duì)編譯原理這門(mén)課的許多知識(shí)點(diǎn)有了更加深刻和具體的理解,而不再只限制于做題。如:以前在編譯原理課上雖然知道First集合和Follow集合怎么求的,卻不知道First集合和Follow集合到底是干什么的,通過(guò)編寫(xiě)程序自己明白了他們的實(shí)際作用,使得自己不僅知其然還知其所以然,從而使得自己加深了對(duì)知識(shí)點(diǎn)的理解和掌握。此外,由于在做報(bào)告的時(shí)候,需要描繪DFA和程序流程圖,使得自己初步掌握了使用visio和word畫(huà)圖的能力。[第三篇:編譯原理課程設(shè)計(jì)簡(jiǎn)介編譯原理實(shí)踐課程編譯原理課程是計(jì)算機(jī)專(zhuān)業(yè)必修的一門(mén)重要的專(zhuān)業(yè)基礎(chǔ)課程,也是計(jì)算機(jī)系統(tǒng)軟件中非常重要的一個(gè)分支,經(jīng)過(guò)多年建設(shè)取得了豐碩的教學(xué)成果:2003年被評(píng)為“吉林大學(xué)百門(mén)精品課程”之一,2004年被評(píng)為吉林省精品課程,2006年被評(píng)為教育部—微軟精品課程。一、實(shí)驗(yàn)課程目的編譯原理課程是計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)學(xué)生的專(zhuān)業(yè)骨干課之一。編譯原理實(shí)踐性教學(xué)的設(shè)計(jì)思想是使學(xué)生透徹的理解編譯程序的原理和思想,系統(tǒng)全面的掌握編譯技術(shù),使學(xué)生通過(guò)課堂學(xué)習(xí),理解編譯原理的同時(shí),注重學(xué)生實(shí)踐能力的培養(yǎng),進(jìn)一步鞏固對(duì)知識(shí)的理解,通過(guò)實(shí)際的鍛煉,掌握編譯技術(shù),進(jìn)而能夠獨(dú)立的進(jìn)行編譯器的設(shè)計(jì)。一般的應(yīng)用程序是以數(shù)據(jù)作為操作對(duì)象,而編譯程序則是以程序作為操作對(duì)象,是一個(gè)元級(jí)處理程序,它所包含的算法和思想比較特殊,理論性較強(qiáng),抽象度也較高,因而編譯原理課程一直以來(lái)都是計(jì)算機(jī)專(zhuān)業(yè)學(xué)生比較難于理解和掌握的一門(mén)課程。編譯原理實(shí)踐課程的主要實(shí)踐題目有:實(shí)驗(yàn)一: 詞法分析程序開(kāi)發(fā)實(shí)驗(yàn)要求: 。(消除左遞歸和消除公共前綴)。(1)分析法對(duì)文法的要求。(1)分析法的工作過(guò)程。實(shí)驗(yàn)五: 語(yǔ)義檢查實(shí)驗(yàn)要求: 。實(shí)驗(yàn)七: 中間代碼優(yōu)化實(shí)驗(yàn)要求: 。實(shí)驗(yàn)八: 目標(biāo)程序生成實(shí)驗(yàn)要求: 。在吉林大學(xué)計(jì)算機(jī)學(xué)院首次開(kāi)設(shè)了編譯原理實(shí)踐課程,該課程以學(xué)生實(shí)際上機(jī)實(shí)習(xí)為主,教師指導(dǎo)為輔,強(qiáng)調(diào)啟發(fā)式教學(xué),注重學(xué)生自學(xué)能力的培養(yǎng)。該課程采用教研室自編實(shí)踐教材《編譯程序設(shè)計(jì)與實(shí)現(xiàn)》(高等教育出版社)作為輔導(dǎo)教材,通過(guò)對(duì)教材中提供的編譯實(shí)例的透徹解析,加深了學(xué)生對(duì)編譯程序的直觀認(rèn)識(shí),提高了學(xué)生對(duì)源程序的分析和設(shè)計(jì)能力。在課程中,學(xué)生通過(guò)親自動(dòng)手實(shí)踐,把原理性的抽象理論知識(shí)具體化和形象化,消化了課堂上、書(shū)本中難于理解的概念和方法,全面系統(tǒng)的掌握了編譯器的構(gòu)造過(guò)程,激發(fā)了學(xué)生的學(xué)習(xí)興趣,培養(yǎng)了學(xué)生進(jìn)行更深入學(xué)習(xí)的主動(dòng)性。實(shí)踐證明,這些教學(xué)方式的嘗試在實(shí)際教學(xué)中取得了良好的教學(xué)效果。除實(shí)踐課程中規(guī)定的實(shí)驗(yàn)之外,還設(shè)計(jì)了一些難度較大的選作實(shí)驗(yàn)題目,激發(fā)學(xué)生的能動(dòng)性,提高學(xué)生分析問(wèn)題、解決問(wèn)題的能力。針對(duì)這一情況,我們研制了編譯原理多媒體輔助教學(xué)軟件-PCMCAI(Principle of Compile Multimedia CAI),該軟件以多媒體動(dòng)畫(huà)的形式生動(dòng)形象地描述了編譯器的各個(gè)階段的工作過(guò)程。通過(guò)實(shí)踐課程,我們總結(jié)和綜合了學(xué)生中優(yōu)秀的設(shè)計(jì)實(shí)例,同時(shí),廣泛的收集當(dāng)前國(guó)內(nèi)外最新的素材資料,對(duì)編譯實(shí)例庫(kù)不斷地進(jìn)行完善。: 針對(duì)目前學(xué)生人數(shù)增多,教學(xué)資源不足,學(xué)生質(zhì)量參差不齊,教學(xué)質(zhì)量和效率得不到保證的情況,我們充分利用Internet,建立和實(shí)施網(wǎng)絡(luò)課程體系,利用Internet在信息制造、貯存和遞送方面的優(yōu)勢(shì),克服資源不足的缺點(diǎn),同時(shí)也為學(xué)生提供了完全個(gè)性化的學(xué)習(xí)環(huán)境,發(fā)揮網(wǎng)絡(luò)教學(xué)優(yōu)勢(shì)。四、教材及課件教材建設(shè)::《一個(gè)教學(xué)語(yǔ)言TINY的編譯程序教學(xué)實(shí)例分析教材》(2001年6月)。:《編譯程序的設(shè)計(jì)與實(shí)現(xiàn)》(高等教育出版社,2004年7月)。(Small Nested Language)語(yǔ)言實(shí)例設(shè)計(jì)及其編譯器構(gòu)造。(Java語(yǔ)言版本)。2.《用遞歸下降方法實(shí)現(xiàn)自底向上的分析》,劉磊等,吉林大學(xué)學(xué)報(bào)(信息科學(xué)版),2004(3)。4.《測(cè)試語(yǔ)言ATLAS的實(shí)現(xiàn)技術(shù)》,劉磊等,儀器儀表學(xué)報(bào),2004(4)。6.《編譯原理實(shí)踐課程教學(xué)方法研究》,張晶等,全國(guó)首屆計(jì)算機(jī)程序設(shè)計(jì)類(lèi)課程教學(xué)研討會(huì),2005(9)。獲得獎(jiǎng)勵(lì):,《編譯原理實(shí)踐課程建設(shè)》,吉林大學(xué)教學(xué)成果二等獎(jiǎng)。編譯原理CAI課件-PCMCAI獲被吉林省教育廳評(píng)為二等獎(jiǎng),并在第六屆全國(guó)多媒體教育軟件大獎(jiǎng)賽上獲得優(yōu)秀獎(jiǎng)??傊?jīng)過(guò)多年的研究、探索與實(shí)踐,我們?cè)诰幾g原理實(shí)踐課程的建設(shè)方面取得了一定成效。學(xué)生在實(shí)踐課程中,通過(guò)實(shí)際動(dòng)手編程,將抽象的編譯理論知識(shí)具體化和形象化,加深了對(duì)基本概念和方法的理解和運(yùn)用,從而全面系統(tǒng)地掌握了編譯器的構(gòu)造過(guò)程。同時(shí),對(duì)學(xué)生學(xué)習(xí)、理解和掌握編譯原理理論課程也有很大的促進(jìn)作用。實(shí)踐證明,這些教學(xué)方式的嘗試在實(shí)際教學(xué)中取得了良好的教學(xué)效果。通過(guò)編譯程序的編寫(xiě)和調(diào)試能力的訓(xùn)練,激發(fā)學(xué)生進(jìn)一步思考問(wèn)題,培養(yǎng)學(xué)生的學(xué)習(xí)興趣和創(chuàng)新能力。本次課程設(shè)計(jì)的時(shí)間為2周,目的是通過(guò)實(shí)際的題目如:詞法分析、語(yǔ)法分析、代碼優(yōu)化等,使學(xué)生了解和掌握編譯程序的工作原理,同時(shí)培養(yǎng)學(xué)生用相關(guān)的程序設(shè)計(jì)語(yǔ)言進(jìn)行程序設(shè)計(jì),實(shí)現(xiàn)編譯的功能,從而提高學(xué)生的綜合能力。給出實(shí)現(xiàn)功能的一組或多組測(cè)試數(shù)據(jù)(測(cè)試文法),程序調(diào)試后,將按照此測(cè)試數(shù)據(jù)進(jìn)行測(cè)試的結(jié)果列出來(lái)。源程序要按照寫(xiě)程序的規(guī)則來(lái)編寫(xiě)。程序能夠運(yùn)行,要有基本的容錯(cuò)功能。2.課程設(shè)計(jì)實(shí)習(xí)報(bào)告的書(shū)寫(xiě)格式編譯原理 436105 軟件工程 2W 2012.6審 核 人:① 設(shè)計(jì)題目②運(yùn)行環(huán)境(軟、硬件環(huán)境)③算法設(shè)計(jì)的思想 ④算法設(shè)計(jì)分析 ⑤主要函數(shù) ⑥源代碼 ⑦運(yùn)行結(jié)果分析 ⑧收獲及體會(huì) 3.實(shí)施方式本次課程設(shè)計(jì)分成9個(gè)題目,都有一定的工作量,涵蓋本課程內(nèi)容和實(shí)際應(yīng)用相關(guān)的主要技術(shù),學(xué)生可以自由組隊(duì)選擇其中一個(gè)實(shí)現(xiàn)。根據(jù)老師給定的9個(gè)題目進(jìn)行分析設(shè)計(jì),本次課程設(shè)計(jì)采取分組的辦法進(jìn)行,34人為一組,要求每組學(xué)生在規(guī)定時(shí)間內(nèi)獨(dú)立完成。同樣,在編繹一個(gè)程序時(shí),也是在單詞級(jí)別上來(lái)分析和翻譯源程序。設(shè)計(jì)目的與任務(wù):通過(guò)本課程設(shè)計(jì)教學(xué)所要求達(dá)到的目的是:對(duì)詞法分析工作流程進(jìn)行總體設(shè)計(jì)和詳細(xì)設(shè)計(jì),最終用C語(yǔ)言來(lái)設(shè)計(jì)一個(gè)簡(jiǎn)單詞法分析器,實(shí)現(xiàn)對(duì)源程序的詞法分析功能,對(duì)輸入程序去除注釋?zhuān)⒁远叫问捷敵龀绦蛑兴袉卧~。對(duì)于單詞的識(shí)別,有限自動(dòng)機(jī)FA是一種十分有效的工具。在非確定的有限自動(dòng)機(jī)NFA中,由于某些狀態(tài)的轉(zhuǎn)移需從若干個(gè)可能的后續(xù)狀態(tài)中進(jìn)行選擇,故一個(gè)NFA對(duì)符號(hào)串的識(shí)別就必然是一個(gè)試探的過(guò)程。而DFA引擎在任意時(shí)刻必定處于某個(gè)確定的狀態(tài),它搜索是無(wú)需象NFA一樣必須記錄所有的可能路徑(trace multiple possible routes through the NFA),這也是DFA運(yùn)行效率高于NFA的原因。設(shè)計(jì)目的與任務(wù)通過(guò)本課程設(shè)計(jì)教學(xué)所要求達(dá)到的目的是:充分理解和掌握NFA,DFA以及NFA確定化過(guò)程的相關(guān)概念和知識(shí),編程實(shí)現(xiàn)對(duì)輸入的任意正規(guī)式轉(zhuǎn)換成NFA的形式輸出。一條詞法規(guī)則表示一個(gè)正規(guī)表達(dá)式(又叫正規(guī)式),而一個(gè)正規(guī)式又可化為一個(gè)DFA(確定有窮自動(dòng)機(jī)),這個(gè)有限自動(dòng)機(jī)可用來(lái)識(shí)別詞法規(guī)則所定義的所有單詞符號(hào)。然后,再轉(zhuǎn)換為計(jì)算機(jī)可識(shí)別的程序就能自動(dòng)實(shí)現(xiàn)詞法的分析和檢查。設(shè)計(jì)目的與任務(wù)通過(guò)本課程設(shè)計(jì)教學(xué)所要求達(dá)到的目的是:掌握從NFA到DFA的轉(zhuǎn)換,以及用子集法把NFA轉(zhuǎn)換成DFA理論,編程實(shí)現(xiàn)將NFA(不確定有窮自動(dòng)機(jī))轉(zhuǎn)換為DFA(確定有窮自動(dòng)機(jī))。DFA的最小化可以揭示狀態(tài)之間的內(nèi)在聯(lián)系,便于其存儲(chǔ)實(shí)現(xiàn),便于建立用DFA描述的任務(wù)模型,一些理論問(wèn)題也與最小化思想有關(guān)。許多文獻(xiàn)給出了一個(gè)最小化算法,算法的思想是,構(gòu)造狀態(tài)集的一個(gè)劃分,再將這個(gè)劃分中的每個(gè)子集作為新的狀態(tài),從而得到等價(jià)最小DFA。語(yǔ)法分析之LL(1)文法通過(guò)該課程設(shè)計(jì)了解了程序語(yǔ)言的自上而下的語(yǔ)法分析過(guò)程,提高了編程能力,能使我們了解編程語(yǔ)言更多的細(xì)節(jié) 設(shè)計(jì)目的與任務(wù)(1)讀入文法(2)求出first(), follow()(3)判斷是否為L(zhǎng)L(1)文法(4)若是,構(gòu)造分析表;(5)輸入一個(gè)字符串看是否是文法的一個(gè)句子。假設(shè)文法中的任意兩個(gè)終結(jié)符之間最多只有一個(gè)優(yōu)先關(guān)系,則該文法稱為算符優(yōu)先文法。然后按照算符優(yōu)先算法求出各終結(jié)符的算符優(yōu)先關(guān)系,填寫(xiě)算符優(yōu)先表,并將其輸出。這種方法可以適用于很大一類(lèi)上下無(wú)關(guān)文法的語(yǔ)法分析。當(dāng)一串貌似句柄的符號(hào)串呈現(xiàn)于分析棧的頂端時(shí),我們希望能夠根據(jù)所記載的“歷史”和“展望”以及“現(xiàn)實(shí)”的輸入符號(hào)等三方面的材料,來(lái)確定棧頂?shù)姆?hào)傳是否構(gòu)成相對(duì)某一產(chǎn)生式的句柄。這張分析表包括兩部分,一是“動(dòng)作”(ACTION)表,另一是“狀態(tài)轉(zhuǎn)換”(GOTO)表。本文研究的LR(0)文法即K=0時(shí)的文法。了解LR(0)分析器的工作原理,并能利用LR(0)分析表對(duì)輸入串進(jìn)行分析。這樣做的好處是:(1)便于進(jìn)行與機(jī)器無(wú)關(guān)的代碼優(yōu)化工作;(2)使編譯程序改變目標(biāo)機(jī)更容易;(3)使
點(diǎn)擊復(fù)制文檔內(nèi)容
外語(yǔ)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1