999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

簡析計算機專業知識在編譯課程教學中的滲透與融合

2010-01-01 00:00:00計衛星王貴珍
計算機教育 2010年3期

摘要:筆者結合目前計算機專業本科核心課程教與學的實際情況,提出以編譯課程為切入點,在教學過程中加強與其他課程之間的聯系,實現計算機專業知識的滲透與融合。重點分析了以編譯課程為切入點,強化計算機專業知識融會貫通的必要性和可能性,并給出了編譯課程教學的幾點建議。

關鍵詞:編譯原理;專業知識;核心課程;專業素養

“編譯原理”、“操作系統”和“計算機體系結構”是計算機專業的三門核心課程,在計算機科學的教學體系中占有重要地位。學生對于這三門課程的掌握程度在一定程度上反映了他們對計算機專業知識的掌握情況;進一步講,能否確切理解編譯程序、操作系統和硬件系統之間的關聯及它們在計算機系統中的層次地位,直接反映了學生對專業知識的整體把握程度。遺憾的是,受限于目前的教學大綱和學時,這三門課程的教學很少涉及對相關課程的介紹和聯系,只注重課程自身教學內容的講解和分析,導致學生無法理解所學知識的應用背景,產生學無所用的想法。

由于編譯課程內容具有較強的理論性、邏輯性和實踐性,學生在學習過程中感到過于抽象和難以理解。編譯教學內容涉及到程序設計、操作系統和計算機系統結構等相關課程,掌握編譯技術有助于加深學生對整個計算機系統的理解[1]。目前,編譯課程的教學更多關注自身內容的講解和傳授,與其他課程橫向聯系的內容相對較少。許多學校雖然開設了實驗課及相應的課程設計,但只對編譯理論中的某些算法或編譯系統的某一階段功能進行單純的實現與驗證,缺少實際背景。另外,現行的編譯教材大部分都是從編譯技術本身的角度撰寫的,為的是讓學生掌握編譯的基

本理論與思想[2]。所有這些最終導致學生無法對高級語言程序設計每條指令的執行過程有清晰的認識和理解,因而不能實現專業知識的融會貫通。計算機專業的理論基礎對培養學生的計算機專業素養具有非常重要的作用[3],因此課程間封閉的教學方式不利于專業素養的培養和提高。

目前,這一現狀在短時間內很難改變。筆者認為應以編譯課程為切入點,在教學過程中加強相關課程的聯系,促進計算機專業知識的交叉融合。

1以編譯課程為切入點,強化專業知識融會貫通

編譯程序在計算機系統不同層次中處于核心地位,在程序設計及運行過程中起到橋梁和紐帶作用,因此應以編譯課程為切入點,促進專業知識的融合。按照教學大綱安排,學生入學后首先要學習程序設計的相關課程,進入高年級后,主要學習操作系統、計算機體系結構和編譯原理等核心專業課程,它們之間的關系如圖1所示。由圖1可以看出,編譯程序在從程序設計到程序運行產生輸出結果這一過程中處于核心地位,編譯系統對用程序設計語言編寫的源程序

進行編譯,編譯過程中會用到源語言自身的規范和庫程序,需要操作系統提供的庫程序和接口以及目標體系結構的相關信息生成可執行的二進制程序。可執行程序根據用戶的需要,由操作系統調度運行,并與下層的硬件系統產生密切的關系。為此,編譯課程的部分內容需要程序設計語言、操作系統和體系結構等課程作為支撐,這樣學生才能更好地理解計算機系統從軟件設計到程序執行的完整過程。

正是由于編譯系統在計算機系統中處于重要地位,以編譯課程為切入點,在教學過程中加強核心課程之間的橫向聯系,不僅有助于實現編譯課程抽象內容形象化,也有助于加強學生對整個計算機系統的認識。另外,隨著計算機系統結構的不斷發展與更新,嵌入式計算、并行計算與可重構計算系統逐漸得到發展和普及,這些都使編譯系統和計算機系統結構之間的關系變得比以往更加密切。一種新結構的出現需要新編譯系統的支持才能真正發揮作用,因此在編譯課程的教學中加強與其他課程的聯系,也是符合計算機系統發展的大趨勢。

2以編譯課程為切入點的可能性分析

以編譯課程為切入點,強化各個核心專業課程之間的關聯,其可能性概括如下:

(1) “編譯原理”是計算機專業重要的專業課程,且在計算機系統中具有重要地位。

(2) 編譯課程開課的學期較為合適。我們查閱了國內部分高校的教學計劃,研究了計算機核心專業課程的課程安排。如表1所示,在我們調查的高校中,除北京大學、北京航空航天大學和西安交通大學外,近一半高校編譯課程的開課學期多位于程序設計、操作系統和計算機體系結構等課程之后,或與操作系統和體系結構等課程同時講授,因此在編譯課程的講授過程中穿插聯系相關課程的內容比較合理。通過對相關知識進行整理歸納、鞏固與提升,能夠取得較好的教學效果。

(3) 編譯課程多次涉及其他專業課程的內容,例如“編譯原理教學引論”部分要講授程序設計語言的發展歷史、編譯程序在計算機軟件系統中的重要地位等內容;講授“編譯運行時的環境”部分時,一定學時用于講述存儲分配,特別是基于棧的運行時環境的動態存儲分配和基于堆的運行時環境的動態存儲分配部分,與操作系統相關內容相互滲透;在“代碼生成和優化”部分,尤其是過程(函數)調用的翻譯部分,針對目標系統結構的優化部分,亦需要體系結構相關知識作為支撐。反觀操作系統和體系結構等課程的教學內容,與其他課程的聯系則相對較少。

基于以上幾點認識,我們認為,以編譯課程為切入點,充分利用有限的學時,在部分教學內容中強化與其他核心課程的關聯,實現專業知識融會貫通的可能性是存在的。

3關于課程教學的幾點建議

如前所述,目前教與學的實際情況不利于學生對計算機專業知識的融會貫通,在注重軟件能力培養的計算機學院中,學生對圖1的陰影部分知之甚少,而對陰影前后兩部分的內容更加熟悉,掌握程度更高。所以,學生沒有從總體上對所學知識建立完整的知識體系,對所學專業課程沒有構成清晰的輪廓和概括。

為了強化編譯課程的教學效果,教師需要將課程教學置于計算機系統大的背景環境之中,重點闡述編譯程序在計算機軟件系統中的重要性,與其他核心專業課程之間的聯系,同時運用實例教學,使學生從抽象的教學內容中解脫出來,真正感受到所學知識的可用性和有用性。鑒于此,我們對編譯課程的教學提出如下幾點建議:

(1) 在引言部分強調編譯課程與其他課程的關系,重點說明編譯程序在整個計算機系統中的作用和層次地位。需要說明的是,教師不應只強調編譯程序自身的地位和作用,還要將其放入圖1所示的背景中,使學生能夠理解編譯程序在從語言到程序執行過程中所處的位置和作用,加強對計算機專業大背景的認識。

(2) 在運行環境、代碼生成和優化部分,教師應結合操作系統和計算機體系結構內容進行講解,使學生能更好地理解目標代碼格式、函數調用方式、基于棧的存儲管理、代碼優化的原因和目標等概念。

例1:對可優化的簡單程序源碼,使用同一編譯程序多次編譯,每次編譯時指定不同的優化級別,通過分析編譯程序生成的匯編源碼比較生成的可執行程序運行性能,向學生解釋編譯程序在編譯過程中實施的優化措施,說明優化的目的和效果。

例2:針對最簡單的C語言HelloWorld程序,通過分析其在具體平臺上編譯后的運行時函數調用圖(包括操作系統API),說明用戶編寫的程序與語言庫、系統庫之間的關系。

例3:結合具體型號的DSP處理器(例如TMS320 C6000系列)及其調試模式下指令的執行過程,說明針

對具體計算機系統結構進行編譯優化的必要性和重要性。

(3) 建議針對目前常用的系統平臺設計小型完整的實踐課程,實踐內容應適量涉及體系結構和操作系統的相關內容。針對常見的處理器架構和操作系統設計實踐課程,可以使學生在實際的系統中觀察到實踐結果,通過實際操作和驗證增強感官認識,對所學知識融會貫通。

例:針對學生熟悉的程序設計語言(C或者Java)、經常使用的操作系統(Windows或者Linux)、常見處理器架構(例如X86),設計簡單完整的實踐課程。教師提供能夠處理一小部分語法子集的完整編譯程序,供學生學習,作為實踐過程的參照。學生可以將一小部分沒有實現的語法子集作為實踐任務,完善已有的編譯程序,實現從詞法分析到代碼生成的各部分功能。最后應能使增強的編譯程序在現有的系統平臺上運行,編譯源碼文件并生成可運行的應用程序。

4結語

通過調查目前計算機核心專業課程教與學的實際情況,我們發現各個課程的教學相對封閉,因此提出了以編譯課程為切入點,強化專業知識的融會貫通,強調加強編譯課程與其他課程內容的交叉聯系,并從必要性和可能性等方面進行了論述,最后對具體教學內容提出了幾點建議,希望能夠拋磚引玉。

參考文獻:

[1] 李冬梅,施海虎.“編譯原理”課程的教學研究與探索[J]. 計算機教育,2008(8):103-104.

[2] 唐仕喜. 編譯技術可擴展式課程設計改革研究[J]. 計算機教育,2009(2):40-42.

[3] 何炎祥,伍春香. 計算機專業不需要開設編譯原理課程嗎?[J]. 計算機教育,2009(4):61-62.

Analysis of Professional Knowledge Infiltration and Integration in the Compiler Principle Teaching

JI Wei-xing, CHEN Ying, LI Kan, WANG Gui-zhen

(School of Computer Science and Technology, Beijing Institute of Technology, Beijing 100081, China)

Abstract: According to practical situation at present, this paper argues that we should pay close attention to internal relations of computer science professional curricula. Appropriate reference to other courses in the teaching of compiler principle is favorable to the infiltration and integration of profession knowledge. We selective analyze the necessity and possibility of digesting professional knowledge completely in the teaching of compiler principle. Some suggestions on compiler principle teaching are finally given for reference.

Key words: Compiler Principle; professional knowledge; core curriculum; professional attainment

主站蜘蛛池模板: 国产在线一二三区| 国产人妖视频一区在线观看| 97视频在线精品国自产拍| 风韵丰满熟妇啪啪区老熟熟女| 欧美a级在线| 欧美日韩午夜| 国产综合亚洲欧洲区精品无码| 一级做a爰片久久毛片毛片| 久久99国产精品成人欧美| 在线免费a视频| 亚洲午夜天堂| 精品视频第一页| 中文国产成人久久精品小说| 亚洲国产日韩欧美在线| 99这里只有精品在线| 国产午夜无码片在线观看网站| 国产激情无码一区二区APP| 亚洲人成网站在线观看播放不卡| 国精品91人妻无码一区二区三区| 久久精品视频一| 99久久精品国产综合婷婷| Jizz国产色系免费| 乱系列中文字幕在线视频| 中文无码日韩精品| 超清人妻系列无码专区| 国产精品亚洲综合久久小说| 欧美69视频在线| 久久国语对白| 国产麻豆va精品视频| 伊人无码视屏| 久久人人妻人人爽人人卡片av| 国产网友愉拍精品视频| 国产成人精品亚洲日本对白优播| 成人福利在线观看| 久久久波多野结衣av一区二区| 国产精品深爱在线| а∨天堂一区中文字幕| AV在线天堂进入| 亚洲黄色高清| 91久久性奴调教国产免费| 狠狠ⅴ日韩v欧美v天堂| 中国特黄美女一级视频| 精品伊人久久久香线蕉| 日本国产精品一区久久久| 国产在线精品网址你懂的| lhav亚洲精品| 少妇露出福利视频| 国产真实乱了在线播放| 亚洲三级网站| 在线观看视频99| 国产精品女在线观看| 亚洲人成网站日本片| A级全黄试看30分钟小视频| 亚洲永久免费网站| 老司机精品久久| 国产欧美日韩综合在线第一| 免费观看无遮挡www的小视频| 成人毛片在线播放| 一区二区三区成人| 一区二区三区国产精品视频| 亚洲AⅤ波多系列中文字幕| 激情综合网激情综合| 人妻21p大胆| 午夜精品影院| 18禁影院亚洲专区| 日本AⅤ精品一区二区三区日| 国产成人亚洲精品无码电影| 三级欧美在线| 婷婷午夜影院| 亚洲日韩日本中文在线| 亚洲黄网视频| 婷婷色一区二区三区| 丁香六月综合网| 少妇露出福利视频| 国产精品久久久久久影院| 亚洲69视频| 黄色污网站在线观看| 亚欧成人无码AV在线播放| 亚洲小视频网站| 久久精品视频亚洲| 亚洲另类国产欧美一区二区| 国产精品第页|