国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于首要教學(xué)原理指導(dǎo)的“編譯原理”課程教學(xué)實(shí)踐

2018-12-22 10:55孫守卿
電腦知識(shí)與技術(shù) 2018年32期

孫守卿

摘要:《編譯原理》是計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)的與計(jì)算機(jī)專(zhuān)業(yè)的主干課程,具有理論性強(qiáng)、內(nèi)容抽象等特點(diǎn)。根據(jù)梅瑞爾首要教學(xué)原理 , 結(jié)合編譯原理的課程內(nèi)容以“解決問(wèn)題”為核心,通過(guò)喚醒舊知、展示新知、應(yīng)用新知、歸納總結(jié)、融會(huì)貫通五個(gè)階段完成編譯原理課程中語(yǔ)法分析的教學(xué)過(guò)程,取得了良好的教學(xué)效果。

關(guān)鍵詞:梅瑞爾首要教學(xué)原理;編譯程序;語(yǔ)法分析;語(yǔ)法分析樹(shù);上下文無(wú)關(guān)文法

中圖分類(lèi)號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)32-0177-02

Abstract: The Principles of Compilers Course is the a major course of computer science and technology ,and this course is characterized by strong theory and abstract content. According to the First Principles of Instruction, the course content takes "problem solving" as the core, and completes the teaching process of grammar analysis in the course of compiling principle by awakening the old knowledge, displaying the new knowledge, applying the new knowledge, summarizing, and integrating through five stages ,it is showed that the First Principles of Instruction is effective in guiding teaching design.

Key words:Merrill's First teaching principle; computer compiler; syntax analysis ; syntax tree; context- free grammar

1 引言

《編譯原理》作為計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)的專(zhuān)業(yè)基礎(chǔ)課具有抽象性強(qiáng)、邏輯性高、偏理論性等特點(diǎn),因此學(xué)生理解起來(lái)相對(duì)困難。同時(shí)該課程又具有很強(qiáng)的綜合性,要求學(xué)生具備計(jì)算機(jī)組成原理、高級(jí)語(yǔ)言程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)等課程的知識(shí)。

本文以首要教學(xué)原理為依據(jù),對(duì)《編譯原理》課程的核心知識(shí)點(diǎn)語(yǔ)法分析進(jìn)行了研究性教學(xué)實(shí)踐。

2 五項(xiàng)首要教學(xué)原理

五項(xiàng)首要教學(xué)原理是戴維·梅里爾(M. David Merrill)教授總結(jié)了行為主義、認(rèn)知主 義、構(gòu)建主義等諸多學(xué)習(xí)理論,在2002 年提出來(lái)的重要教學(xué)原理。該原理以最終促進(jìn)學(xué)習(xí)者學(xué)習(xí)為目的,提出:(1) 當(dāng)學(xué)習(xí)者介入到解決現(xiàn)實(shí)生活 中的問(wèn) 題時(shí) , 才能促進(jìn)學(xué)學(xué)習(xí) 。(2) 當(dāng)激活已有的 知識(shí)且作 為新學(xué) 習(xí) 的基礎(chǔ)時(shí) , 才能促進(jìn)學(xué) 習(xí) 。(3) 當(dāng)向?qū)W 習(xí)者展示新知識(shí)時(shí) , 才能促進(jìn)學(xué)習(xí) 。(4) 當(dāng)學(xué)習(xí) 者具體應(yīng)用新知識(shí) 時(shí) , 才能促進(jìn)學(xué) 習(xí) 。(5) 當(dāng)新 知識(shí) 整合 到學(xué) 習(xí)者實(shí)際 生 活 中時(shí) , 才 能 促 進(jìn)學(xué) 習(xí)。[1]

3 五項(xiàng)首要教學(xué)原理在教學(xué)實(shí)踐中的應(yīng)用

根據(jù)五項(xiàng)“首要教學(xué)原理”的內(nèi)容, 主要從導(dǎo)入知識(shí)、激活舊知、展示新知、嘗試應(yīng)用和融會(huì) 貫通等以下幾個(gè)具體方面將其運(yùn)用到教學(xué)實(shí)踐中。

“自頂向下的語(yǔ)法分析”在課程導(dǎo)入部分,通過(guò)布置導(dǎo)學(xué)任務(wù),讓學(xué)生了解要學(xué)習(xí)的課程內(nèi)容必需的預(yù)備知識(shí),通過(guò)之前學(xué)習(xí)過(guò)程中遇到的問(wèn)題激發(fā)學(xué)生的學(xué)習(xí)興趣;在激活舊知識(shí)階段,結(jié)合課程內(nèi)容,將與此相關(guān)的《程序設(shè)計(jì)基礎(chǔ)》《離散數(shù)學(xué)》等課程的知識(shí)點(diǎn)與新內(nèi)容進(jìn)行知識(shí)的拓展和遷移;在展示新知識(shí)階段,以LL(1)文法為例,以語(yǔ)法分析樹(shù)為工具,講解First集、Follow集、Select集等概念;在嘗試應(yīng)用階段,以小組為單位,結(jié)合遞歸下降分析法和確定的預(yù)測(cè)分析法實(shí)現(xiàn)C語(yǔ)言的語(yǔ)法分析程序,進(jìn)行知識(shí)的融會(huì)貫通。

3.1 知識(shí)引入階段

根據(jù)梅里爾的理論,當(dāng)學(xué)習(xí)者介入到解決生活實(shí)際問(wèn)題 時(shí),學(xué)習(xí)才能夠得到促進(jìn)。因此,在課程講授過(guò)程中,教學(xué)內(nèi) 容是否能夠在聯(lián)系現(xiàn)實(shí)問(wèn)題的情境中加以呈現(xiàn)是關(guān)鍵 所在。

因此,為了激發(fā)學(xué)生的學(xué)習(xí)興趣,在引入課程內(nèi)容前,發(fā)放導(dǎo)學(xué)任務(wù)單讓學(xué)生完成如下任務(wù):

1) 列舉C 語(yǔ)言 的語(yǔ)法要求

2) 列舉C語(yǔ)言編譯過(guò)程中常見(jiàn)的語(yǔ)法錯(cuò)誤信息

通過(guò)完成課前的資料整理和閱讀,大多數(shù)的學(xué)生能夠?qū)σM(jìn)行講解的知識(shí)點(diǎn)有了一個(gè)初步的認(rèn)識(shí)。學(xué)習(xí)者就會(huì)了解編譯程序的語(yǔ)法分析,就是根據(jù)程序語(yǔ)言的語(yǔ)法規(guī)則,對(duì)源程序進(jìn)行語(yǔ)法分析,如果源程序不符合語(yǔ)言的語(yǔ)法規(guī)則,就通過(guò)調(diào)用出錯(cuò)處理程序,給出相應(yīng)的出錯(cuò)信息。

只有學(xué)生對(duì)具體的源程序的語(yǔ)法規(guī)則有了一定的了解,才會(huì)理解課程中抽象的語(yǔ)法規(guī)則。學(xué)生通過(guò)平時(shí)編譯C程序遇到的出錯(cuò)信息,才會(huì)對(duì)編譯過(guò)程中的語(yǔ)法分析的任務(wù)有了一個(gè)具體的認(rèn)識(shí)。學(xué)生就會(huì)對(duì)編譯程序如何完成語(yǔ)法分析產(chǎn)生了興趣。

3.2 激活舊知識(shí),遷移理解新知識(shí)

當(dāng)以往相關(guān)的知識(shí)和經(jīng)驗(yàn)被激活時(shí), 學(xué)習(xí)才能夠得到促進(jìn)。

在講授語(yǔ)法分析之前,結(jié)合形式語(yǔ)言的文法知識(shí),詳細(xì)介紹描述程序語(yǔ)言的語(yǔ)法規(guī)則的文法—上下文無(wú)關(guān)文法。對(duì)于大多數(shù)學(xué)生而言,形式語(yǔ)言文法是很抽象的內(nèi)容,可以在該階段,引導(dǎo)學(xué)生回憶《離散數(shù)學(xué)》課程中“集合”的概念,讓學(xué)生從形式語(yǔ)言的角度認(rèn)識(shí)到符號(hào)和符號(hào)串的關(guān)系,理解符號(hào)串的連接運(yùn)算,理解空串ε,引導(dǎo)學(xué)生可以從代數(shù)系統(tǒng)的角度,空串ε相當(dāng)于單位元素。程序設(shè)計(jì)語(yǔ)言就是符合某些規(guī)則的符號(hào)串的集合。

在上下文無(wú)關(guān)文法的引入前,以學(xué)生熟悉的英語(yǔ)語(yǔ)法入手,以自然語(yǔ)言的句子分析為例,開(kāi)始語(yǔ)法分析的講解。從而消除學(xué)生對(duì)新知識(shí)的陌生感。而且也建立了新舊知識(shí)之間的聯(lián)系,使舊知識(shí)成為學(xué)習(xí)新知識(shí)的基礎(chǔ)。

3.3 知識(shí)展示新知

只有教學(xué)展示論證了所學(xué)的新知識(shí)而不 是僅僅告知相關(guān)的信息時(shí),學(xué)習(xí)才能夠得到促進(jìn)。

因此,在講授自頂向下語(yǔ)法分析的時(shí)候,要避免從概念到概念的注入式教學(xué)方式,在該部分的講授過(guò)程中,借助語(yǔ)法分析樹(shù)為主要工具,將自頂向下語(yǔ)法分析中的主要問(wèn)題,如:回溯問(wèn)題,左遞歸問(wèn)題,以非常形象的方式呈現(xiàn)給學(xué)生。通過(guò)啟發(fā)式教學(xué),對(duì)候選產(chǎn)生式的選擇進(jìn)行提問(wèn),對(duì)候選式的結(jié)構(gòu)特點(diǎn)進(jìn)行提問(wèn),引導(dǎo)學(xué)生自己發(fā)現(xiàn)問(wèn)題,自己嘗試解決問(wèn)題的辦法。

在講解的過(guò)程中,通過(guò)LL(1)文法和非LL(1)文法進(jìn)行對(duì)比分析,充分利用多媒體手段,將語(yǔ)法分析樹(shù)的分析過(guò)程動(dòng)態(tài)化,將每一步的分析過(guò)程一點(diǎn)點(diǎn)呈現(xiàn)在學(xué)生面前,學(xué)生也會(huì)不自覺(jué)地將自己畫(huà)的語(yǔ)法樹(shù)和課件中展示的語(yǔ)法樹(shù)進(jìn)行對(duì)比,主動(dòng)參與到教學(xué)活動(dòng)中來(lái),在這個(gè)互動(dòng)的過(guò)程中,加強(qiáng)了學(xué)生對(duì)LL(1)文法的理解。

在此基礎(chǔ)上,由回溯問(wèn)題,可以引入First集的定義,繼而Follow集和Select集的定義,引導(dǎo)學(xué)生逐步掌握知識(shí)要點(diǎn)。

3.4 知識(shí)引入課堂練習(xí)

在課程講授過(guò)程中,學(xué)習(xí)者是否 有機(jī)會(huì)練習(xí)和應(yīng)用他們剛剛理解的知識(shí)可以有效促進(jìn)學(xué)生學(xué)習(xí)。當(dāng)學(xué)生掌握 了語(yǔ)法分析的要點(diǎn)后,開(kāi)展鞏固練習(xí)。練習(xí)題的難度先易后難,采取遞進(jìn)式的方式給學(xué)生,以滿足不同層次的學(xué)生需要。鼓勵(lì)學(xué)生根據(jù)所學(xué)到的文法,嘗試解決其他形式的文法。在練習(xí)的過(guò)程中,及時(shí)發(fā)現(xiàn)學(xué)生解題中的問(wèn)題,及時(shí)糾正。與此同時(shí),接受能力稍慢的學(xué)生也可以及時(shí)進(jìn)行提問(wèn),教師也可以有機(jī)會(huì)進(jìn)行單獨(dú)輔導(dǎo)。通過(guò)反饋和指導(dǎo),增強(qiáng)學(xué)生的思維 能力,強(qiáng)調(diào)學(xué)生對(duì)解 決問(wèn)題的方法與技能的自我理解,自我掌握,強(qiáng)調(diào)學(xué)生的 個(gè)人感受和獨(dú)特見(jiàn)解。

3.5 知識(shí)融會(huì)遷移

遷移是已學(xué)過(guò)的東西在新 情境中的應(yīng)用。學(xué)生能將所學(xué)到的語(yǔ)法分析學(xué)習(xí)知識(shí)運(yùn)用到解決新問(wèn)題 的情境中,就會(huì)產(chǎn)生觸類(lèi)旁通、舉 一反三的學(xué)習(xí)效能。

對(duì)于語(yǔ)法分析中抽象的概念和復(fù)雜的算法,如果學(xué)生只停留在對(duì)知識(shí)的記憶和理解方面是不夠的,需要學(xué)生在實(shí)踐中深入理解并掌握語(yǔ)法知識(shí)和相關(guān)算法。

因此,在語(yǔ)法分析的實(shí)驗(yàn)過(guò)程中,將學(xué)生分組,以小組合作的單位,采取任務(wù)驅(qū)動(dòng)的形式,布置小組完成一個(gè)小的編譯程序的語(yǔ)法分析過(guò)程。

項(xiàng)目?jī)?nèi)容:從文件中讀入文法,從鍵盤(pán)上輸入待分析的符號(hào)串,采用 LL(1)分析算法判斷該符號(hào)串是否為該文法的句子

文法要求:文法為L(zhǎng)L(1)文法

實(shí)現(xiàn)方式:預(yù)測(cè)分析程序

通過(guò)語(yǔ)法分析程序的設(shè)計(jì)及實(shí)現(xiàn),促使學(xué)生“在做中學(xué)”“在做中發(fā)現(xiàn)問(wèn)題”,學(xué)會(huì)把理論知識(shí)應(yīng)用到實(shí)際的語(yǔ)言分析中,增強(qiáng)對(duì)知識(shí)實(shí)用性的認(rèn)識(shí)。并且在分組完成任務(wù)的過(guò)程中,學(xué)生也可以將軟件工程、程序設(shè)計(jì)基礎(chǔ)等課程的專(zhuān)業(yè)知識(shí)進(jìn)行擴(kuò)展應(yīng)用。

4 結(jié)束語(yǔ)

以五項(xiàng)首要教學(xué)原理指導(dǎo)的“編譯原理”課程教學(xué)實(shí)踐過(guò)程中,充分體現(xiàn)出學(xué)生 是學(xué)習(xí)的主體,而教師則扮演著學(xué)習(xí)的組織者、引導(dǎo)者的角色。在教與學(xué)的過(guò)程中,充分激發(fā)學(xué)生學(xué)習(xí)本門(mén)課程的學(xué)習(xí)興趣,提高學(xué)生學(xué)習(xí)的主動(dòng)性和積極性,努力培養(yǎng)學(xué)生的信息收 集與加工能力、抽象思維能力、綜合概括能力、從根本上改變學(xué)生被動(dòng)學(xué)習(xí)的狀況,提高了教學(xué)效果,使學(xué)生達(dá)到重視 研究性學(xué)習(xí)、協(xié)作學(xué)習(xí)、自主學(xué)習(xí)、獨(dú)立思 考的目的。

參考文獻(xiàn):

[1] 梁雪松.基于五項(xiàng)首要教學(xué)原理指導(dǎo)的教學(xué)方法再探究 [J]. 現(xiàn)代教育科學(xué),2011(4):17-21.

[2] 陸一琳.基于五項(xiàng)首要教學(xué)原理的微課教學(xué)設(shè)計(jì)淺探[J]..教育理論與實(shí)踐,2017(36):43-45.

[3] Merrill M D. First Principles of Instruction [J].Educational Technology Research and Development, 2002(3):43-59.

[4] M.戴維.梅里爾.首要教學(xué)原理[M].盛群力,譯.福州:福建教育出版社,2016:18-46.

[5] 孫素環(huán),趙長(zhǎng)偉,孔功勝.首要教學(xué)原理在計(jì)算思維能力培養(yǎng)中的應(yīng)用[J].閩西職業(yè)技術(shù)學(xué)院學(xué)報(bào),2012(14):82-85

【通聯(lián)編輯:王力】

滕州市| 锡林浩特市| 绥中县| 千阳县| 汶川县| 达日县| 临武县| 汉沽区| 凌云县| 府谷县| 东台市| 山阳县| 隆子县| 崇礼县| 鲁山县| 定日县| 渭源县| 潞城市| 于都县| 咸宁市| 灵山县| 贺州市| 太和县| 灵石县| 华池县| 改则县| 南召县| 容城县| 三台县| 淳安县| 恭城| 房产| 安阳市| 吴桥县| 郴州市| 宁武县| 钟祥市| 马尔康县| 密云县| 称多县| 洛川县|