鄒長軍 管莉莉 易鈺程
【摘要】針對《編譯原理》課程教學中所面臨的問題,本文將KM教學法引入編譯原理課程的教學實踐中。將編譯原理相關課程知識體系結構化,以整體—部分—整體為教學模式。將編譯器所涉及的相關知識點以邏輯思維導圖形式呈現,用這種方式可以直觀、簡潔地進行抽象知識的傳授,使得該課程的知識體系邏輯結構清晰、明了,使學生融會貫通。同時便于學生舉一反三,將所學理論知識與實踐相結合。
【關鍵詞】KM教學法? 編譯原理? 思維導圖
【基金項目】國家自然科學基金(NO.62162027);九江市重點研發計劃(項目編號:2020069)。
【中圖分類號】G642.0? 【文獻標識碼】A 【文章編號】2095-3089(2021)43-0192-03
編譯原理課程是計算機專業中一門具有較強工程實踐性的學科,主要包括算法和軟件工程兩方面內容。主要讓學生掌握編譯器基本原理的,從編譯器的工作原理出發剖析編譯器的基本構成和工作原理,培養學生從底層構造一個編譯器的工程實踐能力。由于計算機學科是一門快速發展的學科,相關工具軟件更新換代頻繁,學生普遍忽略對基礎的掌握,反而熱衷于當前的熱點領域。且編譯原理課程所涉及領域較多,如匯編語言、算法與數據結構、軟件工程理論等。同時,該課程比較抽象、算法設計復雜,學生普遍缺乏興趣。加之該課程相關章節之間聯系緊密,一旦其中某個章節掌握不牢,后續章節不容易跟上節奏。因此,根據教學實踐中遇到的以上諸多問題,提出將KM教學法[1-2]引入到編譯原理課程的教學中。嘗試構建編譯原理課程的知識邏輯架構圖以及相應思維導圖,并將它們貫穿到整個課程的課堂教學中,促進學生對編譯原理課程學習的積極性,提高課程教學質量[3-4]。
1.KM 教學法介紹
KM教學法是楊炳儒教授經過多年的教學實踐總結出來的一種創新型的教學方法,基本思想是首先掌握課程的總體架構,然后再去了解課程中的每一部分,最后再從總體上去把握。KM 教學法中的KM分別是“知識邏輯結構”(Knowledge Logic Structure,KM)與“思維導圖”(Mind Mapping,MP)的英文字母開頭的縮寫。其中知識邏輯結構區別于教材中固有的知識結構,是跨越章節的、橫向的基本思維形式。MP是一種具有發散思維的表達轉換過程,學生能夠借助MP來提高思維的能力。并且隨著學生思維不斷的深入,可以逐漸建立一個有意義的思維導圖。思維導圖體現了大腦的自然思維方式,能讓多種觀點自然地在MP圖上進行表達,加強記憶??梢栽趧摻ㄋ季S導圖的過程中使用不同顏色、不同形狀,使得負責邏輯思維、詞匯表達、數字運算的左腦結合負責直覺、創造力和想象力的右腦,并進一步激發右腦的潛能。
KM教學法其本質就是:將知識邏輯結構與MP相融合的全新教學方法,是一種分類、推導、證明、反駁、歸納相結合的思維導圖,并通過這種方式去組織整個教學過程的一種教學方法[5-9]。
2.KM教學法基本模式
KM教學法基本模式是按照搭建粗框架、展開填充、啟發誘導、按照章節、跨章節的步驟展開。
(1)首先給出按章節的總體粗框架結構,展現各章節之間的內容聯系。(2)本著精煉的原則,按照章節展開重點、突出難點、呈現關鍵內容。(3)遵循思維導圖等形式,并開展啟發式的誘導。(4)按照KM方法建立邏輯夾頭,按照章節的形式凝練出總體架構,體現豐富生動的知識點,展示它們之間的復雜內在聯系。(5)對于具有邏輯聯系的章節進行對比,通過擴展性、跨章節的KM來加以實現。
該模式也體現了教學過程中交互的“薄-厚-薄”模式。即從加涅提出和發展的信息加工方面來看,先給學生“薄”的信息感受,快速建立全局的整體框架;再進行逐步展開予以擴充,啟發誘導形成“厚”的涵蓋核心內容(重點、難點、關鍵)的信息載體;最后使學生從厚重的載體中構建出充滿了豐滿內在聯系的“薄”的總體架構[10-12]。
總括出的知識系統可以用“圖表”的形式概括,具有結構清晰、融會貫通、直觀形象等特點。通過它,可以使我們對知識的全貌有一個宏觀的認識,并且厘清所歸納出的幾條線索;這樣只要牽動一點就可以帶動一串,便于記憶與運用。按照這種模式組織的教學過程,可以使學生不斷取得認識上的“飛躍”[13-15]。
3.KM教學法在編譯原理課程中的應用
編譯原理是計算機專業的一門重要專業課,課程要求學生了解計算機高級語言流程序被計算機接受、掃描、詞法分析、語法分析、語義解釋執行的原理與過程;掌握編譯的原理和基本算法、各種概念和語言描述。
以清華大學出版社出版的《編譯原理》第三版為例,全書主要內容共分10章,按邏輯功能不同可將編譯過程劃分為五個基本階段,分別是第一章的引論,第二章、第三章的詞法分析,第四章~第六章的語法分析,第七章、第八章的語義分析和中間代碼生成,第九章、第十章目標代碼生成和優化組成,基本知識點的邏輯架構如圖 1所示,通過該架構圖可以非常直觀地了解編譯原理課程的整個知識點之間聯系,方便學生建立整體框架,做到通過“薄”的內容建立骨架結構。與此相對應,我們將整個編譯過程的編譯程序劃分為五個邏輯階段(即五個邏輯子過程),如圖 2所示。
其中,詞法分析任務是分析和識別單詞,并以某種編碼形式輸出。其中單詞是語言的基本語法單位,一般語言有四大類單詞分別為:①語言定義的關鍵字或保留字;②標識符;③常數;④分界符(運算符)。
語法分析任務是根據語法規則(即語言的文法),分析并識別出各種語法成分,如表達式、各種說明、語句、過程、函數等,并進行語法正確性檢查。
語義分析任務:對識別出的各種語法成分進行語義分析,并產生相應的中間代碼。生成中間代碼的目的:? ①便于進行優化處理;②便于編譯程序的移植和重用。
由語法分析識別出賦值語句,語義分析首先要分析語義上的正確性。根據賦值語句的語義,生成中間代碼。即用一種語言形式來代替另一種語言形式,這是翻譯的關鍵步驟。
由中間代碼很容易生成目標程序(地址指令序列)。這部分工作與機器關系密切,所以要根據特定機器進行。
通過該編譯過程邏輯結構可以方便學生掌握在編譯的每個階段,編譯器分別執行了什么操作、其對應的輸入、輸出分別是什么,每個階段的前驅步驟和后繼步驟分別是什么,達到進一步豐富骨架、填充肌肉而實現“厚”的目標。
所謂編譯過程是指將高級語言程序翻譯為等價目標程序的過程。根據編譯程序各部分功能不同,可將編譯程序分成前端和后端(圖3)。編譯前端:與源語言有關,與機器無關的優化。編譯后端:與目標機器有關,與目標機有關的優化及目標代碼產生。通過對編譯前端后端的梳理,可以進一步梳理總結編譯過程的邏輯結構,通過梳理厚的“薄”框架,讓學生進一步建立基本框架。通過以上三個步驟實現了“薄—厚—薄”整個流程的閉環,建立整體形象;使學生從厚重的載體中構建出充滿了豐滿內在聯系的“薄”的總體架構。
4.結論
針對理論性較強,學習難度較大的 “編譯原理” 課程,文章創造性地提出了基于KM教學法的課程教學改革具體方法。KM方法更利于學生了解和掌握編譯原理相關知識及其之間的聯系,并且,今后的課程實踐教學中,我們將更多地使用KM教學法來進一步提高該課程的教學質量。
參考文獻:
[1]楊炳儒.KM教學論研究與實踐[J].北京科技大學學報:社會科學版,2012(1):93-96+149.
[2]周法國,張帆,楊炳儒.基于KM教學論的面向對象程序設計教學研究[J].教育研究前沿:中英文版,2015(2):17-22.
[3]張帆,楊炳儒.KM教學法在“數據結構”課程中的研究與應用[J].基礎教育研究, 2010(24):21-22.
[4]楊炳儒,張桃紅.理工科課堂KM教學法研究[J]. 現代大學教育,2006(4):83-85.
[5]張艷明,桂忠艷,孫堯.結合微課的KM教學法在計算機基礎教學的應用[J].微型電腦應用,2019,35;No.315(7):5-7.
[6]田毅,賈永旺.KM教學法在離散數學中的應用[J]. 計算機教育,2019,No.289(1):37-39.
[7]尹芝.知識可視化下KM教學法的研究和應用[D]. 沈陽師范大學,2011.
[8]舒文豪,錢文彬,楊珺.KM教學法在《軟件工程》課程中的教學實踐[J].教育教學論壇, 2017(51):191-192.
[9]李忠慧.結合認知結構的KM教學法在C語言教學中的應用[J].計算機時代, 2019, 321(3):68-70.
[10]Liu SH, Lee GG. Using a concept map knowledge management system to enhance the learning of biology[J].Computers&Education,2013(68):105-116.
[11]Hwang GJ,Yang LH.A concept map?鄄embedded educational computer game for improving students’ learning performance in natural science courses[J].Computers&Education,2013(69):121-130.
[12]Groth RE, Bergner JA. Mapping the structure of knowledge for teaching nominal categorical data analysis[J].Educational Studies in Mathematics,2013,83(2):247-265.
[13]Knowledge Visualization:Towards a New Discipline and its Fields of Application. Eppler M J,Burkhard R A. Cities, 2004.
[14]仲旦彥,陳玉榮.知識結構具象化的《會計學》教學創新實踐研究——基于KM教學法[J].教育現代化, 2019(48).
[15]孟祥軍,石瑾,張馨,等.提高結構化學課程教學質量的實用方法——基于“KM教學法”開發“知識邏輯結構呈現式”課件[J].高分子通報,2015(8):123.
作者簡介:
鄒長軍(1987年-),男,講師,博士,主要研究計算機圖形學、虛擬現實技術。