亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        編譯原理課程教學實踐探究

        2018-12-30 04:05:19侯書東常家琦
        關(guān)鍵詞:編譯器原理教學方式

        侯書東,常家琦,劉 恒

        (安徽工業(yè)大學 計算機科學與技術(shù)學院,安徽 馬鞍山 243002)

        編譯原理作為計算機類專業(yè)的傳統(tǒng)核心課程,對學生專業(yè)系統(tǒng)能力的培養(yǎng)具有重要意義。編譯原理課程的重要性在于:編譯器的開發(fā)是計算機軟件開發(fā)的一個綜合;解決問題的思想方法有利于計算思維的培養(yǎng),對于計算機專業(yè)素養(yǎng)形成十分必要[1]。

        一、傳統(tǒng)編譯原理課程教學中存在的問題

        計算機類專業(yè)本科生學習本專業(yè)的第一門語言課程是C語言。C語言由于其類型不安全性,容易出現(xiàn)一些難以捉摸的錯誤,使得學生難以定位和解決問題。如果能讓學生根據(jù)編譯器提供的提示信息,精確定位程序中的錯誤類型和位置,把編譯原理中所學用于實際C語言編程需求,這既完成了課程的教學內(nèi)容,也提升了學生的軟件編程和系統(tǒng)分析的能力。

        從普通高等院校的編譯原理教學實際出發(fā),其課程覆蓋范圍一般僅限于編譯器的前端,即詞法分析、語法分析和語法制導翻譯等內(nèi)容[2]。這其中包括大量抽象且邏輯復雜的理論知識點,如形式語言理論、正規(guī)式、有限自動機、上下文無關(guān)文法、屬性文法和語法制導翻譯等。傳統(tǒng)的教學方式強調(diào)知識點的灌輸,讓學生解決孤立的單一問題,缺乏各知識點之間的關(guān)聯(lián)。這種“只見樹木,不見森林”的教學方式會極大地削弱學生的學習積極性,導致整體效果不佳。

        理論教學的重要性不言而喻,然而面對當前社會“碎片化學習”,要確保授課效果的高質(zhì)量,需要對課堂內(nèi)容的選擇和教學方式的安排進行精心設(shè)計。尤為重要的是激發(fā)學生的學習熱情,實現(xiàn)從被動接受到主動學習過程的角色轉(zhuǎn)換。

        二、以實踐為導向的互助式編譯原理教學

        (一)理論與實踐相銜接

        理論知識的來源一般都有其確定的問題背景。脫離實際問題來進行理論教學,對學生實際能力的提升沒有益處。編譯原理課程中的大量理論知識,存在一種銜接遞進的關(guān)系,每個知識點的引入和拓展,都是對于現(xiàn)實遇到問題的解決路徑再現(xiàn)。因此,整個授課過程就在重現(xiàn)這種解決方案演變的變化歷程。而實現(xiàn)這一目標的關(guān)鍵之處,是教師從之前的“站到講臺前”變到現(xiàn)在的“坐在學生中”。這一變化絕不僅僅是簡單地將所有問題留給學生,從“講授”變成“答疑”,而是從問題設(shè)計、思考啟迪、討論引導到過程管理等各方面都對教師提高了要求。特別是現(xiàn)代高級語言發(fā)展日新月異,各種新問題層出不窮,如何在面對開放性的未知問題時,從系統(tǒng)和整體的角度給出學生解決問題的方式方法,而不是給出具體每個問題的回答[3],這是對教師能力的一種新考驗。

        計算機類專業(yè)課程教學的目的,歸根結(jié)底是以培養(yǎng)和提升學生們現(xiàn)實動手能力為主題。“考試高分”僅是手段,“實踐高手”才是目的。通過精心設(shè)計的問題場景,激發(fā)學生的學習興趣,逐步引導討論內(nèi)容,得到初步解決方案,再層層優(yōu)化,最后比較與經(jīng)典方法的優(yōu)劣之處。這樣的理論與實踐交叉的教學方式,可以讓學生從根源上理解并掌握理論技術(shù)的來龍去脈,避免繁雜的死記硬背以及理論與實踐脫節(jié),在實踐中學習和總結(jié)規(guī)律。

        在編譯原理課程教學里,以詞法分析為例闡述如何從正規(guī)式構(gòu)造等價自動機的內(nèi)容必不可少。在先修的高級語言課程中,學生只需知道如何運用正規(guī)式。而在本課程學習中,則需進一步掌握正規(guī)式的實現(xiàn)原理。正規(guī)式的實現(xiàn)方式主要有非確定有限自動機(NFA)和確定有限自動機(DFA)兩種引擎方式。在教學過程中,常規(guī)流程都是給定正規(guī)式,構(gòu)造其NFA,在此基礎(chǔ)上轉(zhuǎn)化為DFA,最后進行最簡化處理。這在無形中向?qū)W生暗示了DFA才是詞法分析實現(xiàn)的最終手段,其實不然,兩種引擎方式各有其優(yōu)缺點和應(yīng)用場景。DFA是文本主導,執(zhí)行速度快,可以確保匹配最長的可能字符串,滿足結(jié)果一致性。NFA是表達式主導,需要反復的吃、吐字符,存在著大量的回溯過程,速度慢。但是其特性豐富,可以捕獲子表達式匹配和匹配的反向引用。子表達式編寫方式不同,對于DFA是無差異的,但是對NFA的控制方式是不同的。如果能從編碼實現(xiàn)的角度考慮這兩種方式的異同,啟迪學生的獨立思考能力,其教學效果要明顯優(yōu)于枯燥的理論知識傳授。

        以編譯原理課程教學中語法分析中的算符優(yōu)先分析為例,在討論終結(jié)符之間的優(yōu)先關(guān)系時,與傳統(tǒng)認知是有一定區(qū)別的。此處有必要回顧“離散數(shù)學”中對于“關(guān)系”的定義?;仡櫤愕汝P(guān)系的定義,需要同時滿足自反性、對稱性和傳遞性。顯然,算符之間的優(yōu)先關(guān)系是可以不滿足這三種性質(zhì)的。以四則運算為例,存在+>+,即加號的優(yōu)先級是大于加號的,不滿足自反性。同時,由于(=),而不存在)=(,所以不滿足對稱性。另外,同時存在+<(、(<+和+>+同時成立,不符合傳遞性的性質(zhì)。這中間的區(qū)別就在于不僅需要考慮待比較的兩個算符,算符出現(xiàn)的先后順序也至關(guān)重要。至此,算符之間的優(yōu)先級,與自然數(shù)的大小比較、或者與線程調(diào)度中的優(yōu)先級等概念中的區(qū)別之處自然顯現(xiàn)。這也引出了后續(xù)算符優(yōu)先函數(shù)的方便與不足之處。這種先后課程之間知識點的貫通,既加深了對已有知識的理解,同時也更新了知識圖譜。

        (二)編譯器設(shè)計實現(xiàn)方案

        編譯原理課程教學理想情況,學生應(yīng)該能夠獨立自主完成小型編譯系統(tǒng)的構(gòu)造。實際教學中,學生只需吃透關(guān)鍵的幾條原理知識,如NFA的確定化,LL(1)文法中FIRST和FOLLOW集合的構(gòu)造,LR(1)文法中識別活前綴DFA構(gòu)造等,基本上已經(jīng)滿足了課程考試要求。然而,僅靠理論學習對實現(xiàn)一個基礎(chǔ)編譯器來說是遠遠不足的。相比較于學生對理論知識的接受程度,學生自主動手完成編譯系統(tǒng)的能力缺乏就更為明顯。如何面對全體學生,制定出一套適用的實踐方案,是課程實際效用的關(guān)鍵。

        對于編譯原理課程復雜實現(xiàn)機理可以在后續(xù)過程中逐步展開,串聯(lián)起數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、組成原理等一系列關(guān)聯(lián)課程,讓其學而有物。對于學有余力的學生,可以提高要求,讓其完成類C編譯器。對于確實難以獨立完成的,最基本的要求是可以復現(xiàn)課程演示的四則運算。要求不同,體現(xiàn)在設(shè)計語言的復雜度不同。囿于師資力量薄弱,對于編譯器的設(shè)計要求以前端為主,關(guān)于目標代碼生成了解即可,不做具體要求。

        以布爾表達式的翻譯模式為例,通過語法制導翻譯內(nèi)容的學習,對于條件表達式中的短路規(guī)則的設(shè)計初衷已了然于胸。然而如何最小化跳轉(zhuǎn)語句的出現(xiàn),掌握回填技術(shù)的使用,乃至初涉獨立于機器的優(yōu)化過程,對于編譯器實現(xiàn)質(zhì)量的優(yōu)劣影響至遠。僅僅明白基本原理的應(yīng)用,缺乏對軟件實現(xiàn)細節(jié)的敏感度和執(zhí)行效率的考量,很難滿足實用性的要求。特別是在面對“流量決定一切”的時代,用戶體驗對于產(chǎn)品品質(zhì)的要求日益挑剔,任何細節(jié)之處的忽略都可能面臨致命的打擊。不求功能的復雜全面,但求體驗的流暢舒適,在系統(tǒng)設(shè)計實現(xiàn)的全過程中,將用戶需求作為第一位,對于端正學生的學習和工作態(tài)度,是一次很好的鍛煉機會。

        三、結(jié)語

        通過精心設(shè)計的問題引導與自動化編譯工具,逐步展開編譯器設(shè)計的主要內(nèi)容,教學既不失課程的專業(yè)性要求又吸引了學生的興趣點,能有效提升學生的綜合實踐能力。在后續(xù)教學改革中,借助慕課、反轉(zhuǎn)等多樣教學形式,增加課堂討論、啟發(fā)、互動的過程,最大限度地激發(fā)學生的學習熱情,仍需不斷地探索和嘗試。

        猜你喜歡
        編譯器原理教學方式
        高校鋼琴教學方式拓展的思考與實踐
        河北畫報(2020年8期)2020-10-27 02:55:14
        了解咳嗽祛痰原理,有效維護健康
        基于相異編譯器的安全計算機平臺交叉編譯環(huán)境設(shè)計
        平均場正倒向隨機控制系統(tǒng)的最大值原理
        化學反應(yīng)原理全解讀
        高中數(shù)學高效教學方式與方法優(yōu)選例談
        學周刊(2016年23期)2016-09-08 08:57:40
        高中化學教學方式探析
        學周刊(2016年23期)2016-09-08 08:57:16
        通信原理教學改革探索
        探索不同教學方式 提高課堂教學效果
        學習月刊(2015年20期)2015-07-09 03:39:42
        通用NC代碼編譯器的設(shè)計與實現(xiàn)
        国产区一区二区三区性色| 国产自偷亚洲精品页65页| 亚洲人成自拍网站在线观看| 亚洲av无码久久精品蜜桃| 波多野结衣有码| 白白视频在线免费观看| 精品国产乱码久久免费看| 国产一级黄色录像大片| 亚洲av精品一区二区三区| 男女上下猛烈啪啪免费看| 亚洲国产精品自拍一区| 国产高清女人对白av在在线| 成人一区二区三区激情视频| 熟妇人妻无码中文字幕老熟妇 | 蜜桃视频一区二区三区在线观看 | 亚洲精品乱码久久久久久久久久久久| 免费看奶头视频的网站| 中文字幕一区二区区免| 成人女同av在线观看网站| 少妇伦子伦情品无吗| 精品久久久久久中文字幕| 日韩不卡av高清中文字幕 | 日本综合视频一区二区| 男人的天堂一区二av| 亚洲精品无码久久久久牙蜜区| 无码日韩AⅤ一区二区三区| 福利网在线| 一个人午夜观看在线中文字幕| 乱码1乱码2美美哒| 亚洲精品无码国模| 国产V亚洲V天堂A无码| 亚洲一区二区三区在线激情| 性欧美丰满熟妇xxxx性久久久| 亚洲男同志网站| 阿v视频在线| 杨幂一区二区系列在线| 婷婷久久香蕉五月综合加勒比| 中文字幕乱伦视频| 天堂在线观看av一区二区三区| 一级午夜理论片日本中文在线| 最新露脸自拍视频在线观看|