《編譯原理》課程教學大綱_第1頁
《編譯原理》課程教學大綱_第2頁
《編譯原理》課程教學大綱_第3頁
《編譯原理》課程教學大綱_第4頁
《編譯原理》課程教學大綱_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

《編譯原理》課程教學大綱一、課程基本信息課程名稱(中文)編譯原理課程名稱(英文)CompilerPrinciples課程類別I專業(yè)主干課課程性質(zhì)2必修授課語言3中文授課學期5學分3課程學時及分配總學時講課實驗課外484080適用專業(yè)計算機科學與技術教材編譯原理(本科教學版)(第2版),機械工業(yè)出版社,[美]阿霍等著,趙建華等譯,2017年1月第1版授課學院計算機與軟件學院先修課程程序設計基礎、離散數(shù)學、數(shù)據(jù)結構、計算機組成原理后續(xù)課程無課程簡介課程基本定位:《編譯原理》是計算機科學與技術專業(yè)的一門理論性與實踐性很強的專業(yè)課,以離散數(shù)學、高級語言程序設計、數(shù)據(jù)結構、計算機組成原理等作為先修課程?!毒幾g原理》課程蘊涵著復雜問題的抽象能力、解決問題的分析思路和方法等分析問題能力的培養(yǎng)。課程從計算機科學中形式語言與自動機的基本理論出發(fā),全面系統(tǒng)地介紹編譯系統(tǒng)程序的主要功能、設計原理和構造方法,重點解決高級程序設計語言翻譯器時遇到的普遍問題,而不偏向于某種源語言或目標機器。本課程討論的概念和技術也可應用于一般的軟件設計之中。核心學習結果:通過本課程的學習,學生應該掌握程序設計語言翻譯過程的基本原理、方法、技術,為學生畢業(yè)后從事復雜軟件設計及計算機科學研究等相關工作培養(yǎng)理論學習基礎以及實踐技能的訓練。學習課程有利于對程序設計語言的理解,可以便于掌握新的語言工具。同時,能夠利用形式化描述工具,表示復雜問題及求解過程。主要教學方法:課堂講授+課程實驗大綱更新時間2020年8月13日注:1.課程類別:選填“通識核心課/通識拓展課/通修課/學科基礎課/專業(yè)主干課/專業(yè)選修課/專業(yè)實踐/素質(zhì)拓展”2.課程性質(zhì):選填“選修/必修”3.授課語言:選填“中文/雙語/全英文或其他語種”二、課程目標.學生學習預期成果:描述學生在學完本節(jié)內(nèi)容后應獲得的知識、能力或素養(yǎng)水平(下同).教學方式:包括講授、討論、案例、演示等,但不限于所列,根據(jù)課程實際需要列舉U!實踐(實驗或?qū)嵙暎┙虒WU!實踐(實驗或?qū)嵙暎┙虒WI編號實驗或?qū)嵙暪こ堂Q教學內(nèi)容學時實驗或?qū)嵙曨愋?思政融入點學生學習預期成果課程目標1詞法分析程序的實現(xiàn)編程實現(xiàn)詞法分析過程:1)按規(guī)那么拼單詞,并轉(zhuǎn)換成二元式形式2)刪除注釋行3)刪除多余的空格、回車符、制表符4)列表打印源程序,按照源程序的行打印,在每行的前面加上行號,并且打印出每行包含的記號的二元形式,填寫并生成符號表5)發(fā)現(xiàn)并定位錯誤4設計型1)理解應用DFA表示圖級語言源程序的單詞構成;2)深刻領會狀態(tài)轉(zhuǎn)換圖的含義,逐步理解有限自動機;3)掌握手工生成詞法分析器的方法,了解詞法分析器的內(nèi)部工作原理。課程目標1,2素養(yǎng):科學素質(zhì)、團隊合作2語法分析程序的實現(xiàn)1)設計合適的文法的規(guī)那么存儲結構;2)利用語法分析程序模擬文法的推導句子的基本過程。4設計型1)理解高級語言語法的表小工具一上下文無關文法;2)深刻領會規(guī)那么的含義,并能夠利用遞歸程序或者其他相關算法模擬推導/規(guī)約的過程;3)掌握手工生成語法分析器的方法,了解語法分課程目標1,2素養(yǎng):科學素質(zhì)、團隊合作

注:1.此表可用于課內(nèi)實踐教學環(huán)節(jié)或某門綜合實踐課程析器的內(nèi)部工作原理。2.實驗類型:選填”驗證性/綜合性/設計性”;實習類型:選填“認識實習/生產(chǎn)實習/畢業(yè)實習”五、課程評價(一)考核內(nèi)容、考核方式與課程目標對應關系課程目標考核內(nèi)容課程目標在各考核方式中占比】平時作業(yè)實驗期中考試期末考試1.1編譯過程和編譯程序的結構,文法的構造,非確定有限自動機確實定化和最小化,正規(guī)表達式與有限自動機的等價性,消除文法的左遞歸和回溯,算符優(yōu)先分析表和優(yōu)先函數(shù)的構造,屬性的計算,翻譯模式的構造,說明語句、賦值語句、布爾表達式和控制語句等的翻譯,名字的作用范圍和運行時存儲空間的分配,基于DAG的局部優(yōu)化和循環(huán)優(yōu)化等。50%40%60%60%1.2編譯過程中用到的經(jīng)典算法,如子集構造法、遞歸和非遞歸的預測分析法、LR語法分析算法等。熟練應用這些方法進行語法分析和推導。50%60%40%40%合計100%100%100%100%各考核方式占總成績權重(自行賦值)10%10%20%60%注:1.課程目標在考核方式及占比:主要根據(jù)課程目標自行設計和制定多元化考核方式,表中所列僅為參考(紅色數(shù)據(jù)可刪除)。但所列考核方式必須覆蓋全體學生,可根據(jù)當學期具體教學情況酌情調(diào)整。2.各考核方式占總成績權重:根據(jù)課程實際情況對各考核方式占總成績的權重予以賦值。(二)考核方式評分標準1.課程作業(yè)評分標準

課程目標評分標準占比90-100(優(yōu))80-89(良)70-79(中)60-69(及格)0-59(不及格)1.1正確完成較好地完成完成了大部完成了大僅完成小50%基本上所大局部習題分習題和實局部習題局部習題有習題和和實驗。驗、有一些和實驗、有和實驗、并實驗。明顯的錯漏較多明顯有很多明的錯漏顯的錯漏1.2正確運用能正確運用能運用所學能運用所無法或很50%所學算法所學的大部大局部的算學算法進少量可以進行文法分算法進行法進行文法行少局部運用所學分析文法分析分析,有一的文法分算法進行些錯誤析,有較多明顯的錯誤文法分析2.期中/期末考試評分標準(筆試類評分標準可在大綱中按以下格式予以說明,也可在通過“試卷分析表”予以說明)課程目標評分標準占比90-100(優(yōu))80-89(良)70-79(中)60-69(及格)0-59(不及格)1.1掌握所有較好地掌握局部掌握基對重要知僅掌握了60%基本概念基本概念和本概念和知識點未完很少量的和知識點、知識點、基識點、大致全理解、基基本概念理解其含本理解其含理解其含本概念不和知識點、義義、略有出?義、有一些清解題思路錯明顯的錯漏混亂1.2能夠針對能夠針對大能夠針對基能夠針對無法針對40%不同文法,局部文法,本的一些文較少量文不同的文熟練運用正確運用編法,正確運法,運用編法,選擇合編譯器的譯器的不同用編譯器的譯器的少適的編譯不同算法算法對其進不同算法對數(shù)算法對器算法對對其進行行分析其進行分析其進行分其進行分分析析,有少數(shù)錯誤析注:考核方式和課程目標在考核方式中占比應與“(一)考核內(nèi)容、考核方式與課程目標對應關系”一致。所列考核環(huán)節(jié),除了筆試類均須依次給出評分標準,格式同上。筆試類課程考核評分標準可以在本課程大綱里進行說明,也可以通過提交“試卷分析表”予以說明。五、參考書目及學習資料.[美]安佩爾,現(xiàn)代編譯原理:c語言描述,人民郵電出版社,2006.勞頓著,馮博琴等譯,編譯原理及實踐,機械工業(yè)出版社,2004.[美]KennethC.Louden,編譯原理與實踐,機械工業(yè)出版社,2002

注:1.支撐畢業(yè)要求指標點:選填項。需要進行專業(yè)認證,有畢業(yè)要求指標點可參照的課程必填,無明確序號課程目標(參考培養(yǎng)目標、畢業(yè)要求、課程定位)支撐畢業(yè)要求指標點1達成途徑1.1了解機器是如何理解不同語言的代碼,了解編譯過程和工作原理,了解編譯過程中用到的正那么表達式、有窮自動機、語法分析樹、詞法語法分析方法等基本概念和技術,了解基于DAG的局部優(yōu)化和循環(huán)優(yōu)化等編譯器的優(yōu)化策略等。培養(yǎng)學生解決問題時的邏輯思維和推理能力;畢業(yè)指標點1.1:掌握數(shù)學與自然科學的基本概念、基本理論和基本技能,領會數(shù)學、物理思想方法,培養(yǎng)邏輯思維和邏輯推理能力;課后作業(yè)、考試1.2讓作為計算機專業(yè)的學生在今后編程時,更加清楚編譯的底層邏輯,了解機器是如何巧妙地一步步理解你所寫的代碼,并最終將其轉(zhuǎn)換成二進制碼,通過機器進行執(zhí)行,其中針對編譯器設計提出的一些經(jīng)典算法可以在將來應用到現(xiàn)代軟件的設計當中,針對工程問題提出創(chuàng)新的解決方案。畢業(yè)要求指標點3.4在充分理解計算機軟硬件及系統(tǒng)的基礎上,能夠設計針對計算機領域復雜工程問題的解決方案,設計或開發(fā)滿足特定需求和約束條件的軟硬件系統(tǒng)、模塊或算法流程,能夠進行模塊和系統(tǒng)級優(yōu)化;畢業(yè)要求指標點5.2在計算機領域復雜工程問題的建模、模擬或解決過程中,能夠使用恰當?shù)募夹g、軟硬件及系統(tǒng)資源和研發(fā)工具,提高解決復雜工程問題的能力和效率。課后作業(yè)、實驗課、考試畢業(yè)要求指標點可參照的可不填。三、理論教學內(nèi)容

章標題教學內(nèi)容學時思政融入點1學生學習預期成果2教學3課程目標第一章緒論1.編譯的定義2,編譯器的結構3.編譯過程簡介2與同學交流:這門課的學習不是一件容易的事情,但這門課卻是計算機專業(yè)學生的特色,鼓勵學生迎難而上,直面挑戰(zhàn)。.了解編譯程序的起源.程序設計語言的開展.理解編譯程序和解釋程序的區(qū)別.了解編譯程序的基本工作過程.理解編譯程序的基本結構.掌握編譯程序各邏輯結構的主要功能講授課程目標1素養(yǎng):科學素質(zhì)、社會責任第二章程序設計語言及其文法.語言及其文法基本概念.高級語言的一般特性.文法的分類和CFG分析樹4.理解形式語言中語法的概念.了解語義的概念,了解高級語言的分類.了解高級語言的結構.理解上下文無關文法.理解語法分析樹與二義性.理解形式語言的分類講授、討論課程目標1,2素養(yǎng):科學素質(zhì)第三章詞法分析.詞法分析器的功能和設計.正那么表達式和正那么定義.有窮自動機及其分6.了解詞法分析器的功能和輸出形式.理解詞法分析器作為一個獨立講授、習題、實驗課程目標1,2素養(yǎng):科學素質(zhì)子程序類、NFA到DFA的轉(zhuǎn)子程序換、識別DFA.換、識別DFA圖及實現(xiàn).Lex工具的使用圖及實現(xiàn).理解單詞符號的識別:超前搜索5.掌握正那么表達式與正那么定義.掌握確定有限自動機(DFA).掌握非確定有限自動機(NFA)8.掌握正那么文法與有限自動機的等價性.掌握正那么式與有限自動機的等價性.掌握確定有限自動機的化簡.了解Lex工具的使用方法

第四章語法分析-自上而下分析.語法分析器的功能.自頂向下分析和LL(1)文法.遞歸預測分析法.非遞歸的預測分析法6和學生討論運用辯證的思維解決問題,抓住問題的主要方面,忽略次要方面,學會抓重點來解決問題。.了解語法分析程序的功能.掌握自上而下分析面臨的問題.掌握左遞歸的消除方法.掌握防止回溯、提左因子的方法.理解LL(1)文法的定義.理解遞歸下降分析程序的構造方法.理解預測分析程序工作過程.掌握First和Follow集的計算、預測分析表的構造.了解LL(1)分析中的錯誤處理10.理解詞法分析器作為一個獨立子程序講授、習題、實驗課程目標1,2素養(yǎng):科學素質(zhì)

第五章語法分析-自卜而上分析.自下而上分析基本問題.算符優(yōu)先分析.LR分析法.語法分析器的自動產(chǎn)生工具Yacc8與學生交流探討理論與實踐的關系,理論可以指導實踐,通過實踐可以鞏固理論知識。在遇到較難的問題面前,應該迎難而上,多思考想方法克服困難,做到不畏難。.掌握歸約的方法.理解符號棧的使用與語法樹的表示.掌握算符優(yōu)先分析算法.了解優(yōu)先函數(shù).了解算符優(yōu)先分析中的出錯處理.理解LR分析器的工作方法.掌握LR(0)項目集族和LR(0)分析表的構造.掌握SLR分析表的構造.了解Yacc工具的使用講授、習題、實驗課程目標1,2素養(yǎng):科學素質(zhì)1.屬性文法第六章語義分析、語法制導翻譯及中間代碼生成.翻譯模式.語義處理.語法制導翻譯.中間代碼.簡單賦值語句的翻譯.數(shù)組的翻譯.布爾表達式和控制結構的翻譯.了解基于屬性文法的處理方法.理解屬性的依賴圖和屬性計算方法.了解S-屬性文法的自下而上計算.了解L.屬性文法和自頂向下翻譯.理解自頂向下翻譯及常見語言的翻譯及中間代碼表示.了解遞歸下降翻譯器的設計理解符號棧的使用與語法樹的表示.理解后綴式、圖表示法、三地址代碼的中間代碼表示方法.掌握四元式的表示方法.理解說明語句的翻譯方法.理解賦值語句的翻譯.理解簡單算術表達式及賦值語句.理解數(shù)組元素的引用.掌握控制結講授、討論、案例、習題課程目標1,2素養(yǎng):科學素質(zhì)構中的布爾式翻譯14.理解簡單控制語句的翻譯

注:1.思政融入點:至少寫3條,簡述該課程教學中將思政教育內(nèi)容與專業(yè)教育內(nèi)容有機融合的知識點(下同)。第七章符號表的組織與管理1.理解符號表的構成0掌握符號表的構造與組織自學課程目標1,2素養(yǎng):科學素質(zhì)第八章運行時存儲空間組織.目標程序運行時的活動.存儲分

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論