基本信息
- 項目名稱:
- 《編譯原理》課程網(wǎng)絡(luò)演示系統(tǒng)
- 小類:
- 信息技術(shù)
- 大類:
- 科技發(fā)明制作A類
- 簡介:
- 由于《編譯原理》的理論及算法都比較抽象,要理解它們并不容易。這里就是結(jié)合了可視化技術(shù)把算法的過程都以圖形化的方式顯示出來,使這此算法更容易被理解了。想想看,如果把它作為輔助教學(xué)的,抽象的算法過程都以圖形化的方式直接顯示出來,學(xué)生就可以快速的理解算法的思想及過程,從而大大的提高學(xué)習(xí)效率以及教學(xué)效果。
- 詳細(xì)介紹:
- 編譯原理在計算機(jī)科學(xué)中占有重要地位,所以基本上每個學(xué)習(xí)計算機(jī)科學(xué)的人都需要學(xué)習(xí)它。通過學(xué)習(xí)這些原理,就能更加了解各種高級語言的運行機(jī)制,就能編寫出更為高效的程序??梢娫撗菔鞠到y(tǒng)有較大的需求: 1、潛在用戶面廣:現(xiàn)在從事計算機(jī)以及學(xué)習(xí)計算機(jī)專業(yè)的人員數(shù)量廣大,而編譯原理是每個學(xué)習(xí)計算機(jī)科學(xué)的必修課,可以看出潛在用戶之多。 2、學(xué)習(xí)效果好:編譯原理過于抽象,要理解其算法并不容易。而現(xiàn)在通過可視化技術(shù)以直觀的方式來演示其算法的過程,學(xué)習(xí)的效果比以前的學(xué)習(xí)方式有很大的提高。 3、用途較廣:該系統(tǒng)既可用于輔助教學(xué),也可以方便人們自學(xué)編譯原理,還可以作為一個工具快速求解所涉及算法的結(jié)果。 如今,只有設(shè)計良好的算法動畫演示才能有效幫助學(xué)生學(xué)習(xí)算法的觀點已基本被人們普遍接受。那么,什么樣的算法動畫演示系統(tǒng)才是良好的算法動畫演示系統(tǒng)呢? 許多算法動畫演示系統(tǒng)的研究者對此提出了自己的建議或見解[5]。譬如,Gloor認(rèn)為應(yīng)在算法演示中顯示函數(shù)的結(jié)構(gòu)和提供交互性,F(xiàn)altin建議在圖形演示中插入文字說明, Mille關(guān)注演示圖形模型的選擇,F(xiàn)leischer覺得算法的不變特性可視化很重要,還有一些研究人員提出應(yīng)將算法正確性、效率、速度等特性可視化。總的來說,這些研究人員大多是從系統(tǒng)實現(xiàn)的角度出發(fā),圍繞著某些具體技術(shù)特點來討論良好算法動畫演示系統(tǒng)的特征,提出建議的時候往往忽視了其應(yīng)用局限性。而算法學(xué)習(xí)的特點是,不同算法學(xué)習(xí)過程的認(rèn)知重點不一,也許以上某個建議對某個特定算法的圖形演示設(shè)計很重要,對另一個卻不然。 好的算法動畫演示系統(tǒng)設(shè)計應(yīng)該遵循認(rèn)知規(guī)律,從認(rèn)知主體的學(xué)習(xí)需要出發(fā),關(guān)注如何合理描述算法學(xué)習(xí)重點,而不是過分推崇某條技術(shù)的應(yīng)用。據(jù)此,關(guān)于如何設(shè)計良好的算法動畫演示系統(tǒng),以下四個原則也許是恰當(dāng)?shù)模? 1、合理選擇算法演示中使用的記號和它們的可視化組織結(jié)構(gòu)[2]。首先,算法演示中使用的記號直接影響學(xué)生學(xué)習(xí)算法的效率,如外部記號系統(tǒng)和學(xué)生意想中的記號形式不匹配的話,那么這兩種表示間的連續(xù)映射和翻譯將給學(xué)生的工作記憶帶來額外負(fù)擔(dān)。其次,記號的組織結(jié)構(gòu)也很重要,認(rèn)知科學(xué)的研究發(fā)現(xiàn),在學(xué)生識別圖形結(jié)構(gòu)的能力和學(xué)生運用圖去解決問題的能力之間存在著強大的關(guān)聯(lián),因此,在算法演示中如使用標(biāo)準(zhǔn)圖形結(jié)構(gòu),如“環(huán)”等,可以激起學(xué)生對該圖形結(jié)構(gòu)的一些規(guī)則的聯(lián)想,從而加快推理速度,增強對算法特性的理解。 2、提供交互和圖形演示跟蹤。作為認(rèn)知主體的學(xué)生對圖形表示方法的熟悉程度直接影響算法動畫演示的效果。如同快速運算法的學(xué)員通過訓(xùn)練學(xué)會使用算盤模型作為認(rèn)知的內(nèi)部表示一樣,學(xué)生也可以通過培訓(xùn)逐步接受算法演示中的圖形表示。好的圖形演示應(yīng)提供交互和演示跟蹤功能,學(xué)生使用這些功能一方面可以更輕松地熟悉算法過程,另一方面可以加深對算法演示中的圖形表示方式的理解,鍛煉圖形應(yīng)用技巧。 3、對算法過程進(jìn)行適當(dāng)程度的抽象,使之能與不同算法演示任務(wù)的需求以及學(xué)生的能力相適應(yīng)[2]。學(xué)生能力肯定是有差異的,如果算法動畫演示系統(tǒng)能提供不同形式的抽象表示,那么學(xué)生就能如其所愿選擇其一,這樣做體現(xiàn)了因材施教的思想,可以提高演示的效果和學(xué)生學(xué)習(xí)算法的興趣。有些算法動畫演示過分強調(diào)源代碼跟蹤演示,殊不知真正有多少算法初學(xué)者愿意通過閱讀源代碼去學(xué)習(xí)算法,忽略了算法學(xué)習(xí)主體要求的演示注定很難達(dá)到預(yù)期的效果。 4、適當(dāng)結(jié)合包括文本在內(nèi)的多種表示形式設(shè)計算法演示。譬如,在算法演示過程中穿插適當(dāng)?shù)奈谋窘忉屵€可以幫助總結(jié)算法執(zhí)行的中間結(jié)果,減輕學(xué)生的記憶負(fù)荷。而且,在建立算法的認(rèn)知模型時,單一的圖形表現(xiàn)方式往往難以描述算法學(xué)習(xí)中的需要理解的所有算法特性,在有些情況下,文本描述對于算法過程的理解甚至是不可或缺的。近年來,國內(nèi)外有不少算法動畫演示系統(tǒng)采用超媒體技術(shù)將多種表示形式結(jié)合在一起演示算法,極大地提高了學(xué)生的學(xué)習(xí)效率。
作品專業(yè)信息
設(shè)計、發(fā)明的目的和基本思路、創(chuàng)新點、技術(shù)關(guān)鍵和主要技術(shù)指標(biāo)
- 編譯演示系統(tǒng)說明 演示程序在程序文件夾中,打開index.html文件即可運行。 運行環(huán)境:(IE6.0 或 FireFox) + JRE1.6(Java Runtime Environment Version 6 Update 2) JRE可在以下網(wǎng)址下載: 其他內(nèi)容詳見C.當(dāng)前國內(nèi)外同類課題研究水平概述
科學(xué)性、先進(jìn)性
- 可視化并非是一個新的概念,其使用面也非常廣。但它作為一門新學(xué)科和技術(shù)領(lǐng)域出現(xiàn)的標(biāo)志是1987 年美國科學(xué)基金會NSF組織召開的“科學(xué)計算可視化”專題研討會,以及會后McCormick等人所發(fā)表的“科學(xué)計算可視化”(VisualizationinScientificComputing,ViSC )報告?,F(xiàn)在也稱為科學(xué)可視化(ScientificVisualization),或簡稱為可視化 (Visualization)[2]。 最近幾年國外與可視化相關(guān)的論文就有600多篇,其中涉及的領(lǐng)域眾多,如娛樂、軍事、航天、設(shè)計、生產(chǎn)制造、信息管理、商貿(mào)、建筑、醫(yī)療保險、危險及惡劣環(huán)境下的遙操作、教育與培訓(xùn)、信息可視化以及遠(yuǎn)程通訊等。同時可視化的理論和技術(shù)日趨成熟,尤其在流體力學(xué)、氣象學(xué)、醫(yī)學(xué)、分子圖形學(xué)和石油地震勘探等計算中獲得典型應(yīng)用[2]。
獲獎情況及鑒定結(jié)果
- 無
作品所處階段
- 軟件完善中。
技術(shù)轉(zhuǎn)讓方式
- 無
作品可展示的形式
- 圖片,網(wǎng)站,視頻等。
使用說明,技術(shù)特點和優(yōu)勢,適應(yīng)范圍,推廣前景的技術(shù)性說明,市場分析,經(jīng)濟(jì)效益預(yù)測
- 由于不同算法學(xué)習(xí)過程的認(rèn)知重點各有差異,算法內(nèi)部表示方式不一,其外部表示形式對學(xué)習(xí)效果影響比較大,如算法演示的演示內(nèi)容和 形式?jīng)]有經(jīng)過認(rèn)真調(diào)查分析,設(shè)計不合理,則會導(dǎo)致算法動畫演示的效果不佳,達(dá)不到幫助學(xué)生理解算法的作用。這可以用來解釋Byrne的調(diào)查結(jié)果,說明只有設(shè)計良好的算法動態(tài)演示系統(tǒng)才能有效促進(jìn)學(xué)生算法學(xué)習(xí)。 許多實驗研究者支持好的算法動畫演示具有促進(jìn)算法教學(xué)作用的觀點,有些研究者還進(jìn)而提出一些關(guān)于提高算法動畫演示效果的具體建議,指出算法演示的應(yīng)用環(huán)境也可能影響算法演示的教學(xué)效果。Kehoe[3]通過實驗研究發(fā)現(xiàn),算法動畫演示不僅能有效地促進(jìn)算法過程活動的學(xué)習(xí),而且可以減輕學(xué)生對新算法的畏懼心理,使算法更容易接近,從而增加學(xué)生學(xué)習(xí)動力。Kehoe還發(fā)現(xiàn),與封閉的考試類型的境況比較,學(xué)生在開放、交互環(huán)境下(如做課后練習(xí)時)使用算法動畫演示教學(xué)的效果更佳。
同類課題研究水平概述
- 我國科學(xué)計算可視化技術(shù)的研究始于90年代初。由于數(shù)據(jù)可視化所處理的數(shù)據(jù)量十分龐大,生成圖像的算法又比較復(fù)雜,過去常常需要使用巨型計算機(jī)和高檔圖形工作站等。因此,數(shù)據(jù)可視化開始都在國家級研究中心,高水平的大學(xué),大公司的研究開發(fā)中心進(jìn)行研究和應(yīng)用。近年來,隨著PC功能的提高,各種圖形顯卡以及可視化軟件的發(fā)展,可視化技術(shù)已擴(kuò)展到科學(xué)研究、工程、軍事、醫(yī)學(xué)、經(jīng)濟(jì)等各個領(lǐng)域[3]。隨著Internet的興起,信息可視化技術(shù)更是方興未艾。但從總體上來說,與國外先進(jìn)水平還有差距,特別是在商業(yè)軟件方面,還是空白[3]。 近10年中有不少人研究算法可視化的原因之一是算法可視化有著眾多的應(yīng)用,例如:作為教學(xué)的有力工具、作為算法設(shè)計和分析的工具、作為調(diào)試程序的工具、其它方面的許多應(yīng)用,如計算幾何、操作系統(tǒng)、硬件設(shè)置、編譯系統(tǒng)、專家系統(tǒng)和通訊協(xié)議等。 是不是有了算法動畫演示,就一定能幫助算法初學(xué)者掌握算法呢?認(rèn)知科學(xué)的研究表明,問題并不是那么簡單。有不少實驗研究人員研究算法動畫演示對學(xué)生理解算法的影響,Byrne[1]等調(diào)查了其中一部分,發(fā)現(xiàn)這些研究的結(jié)果混亂不堪:有的研究結(jié)果顯示算法動畫演示讓學(xué)生受益匪淺,有的研究結(jié)果顯示學(xué)生受益有限,達(dá)不到人們的期望值,更有的研究結(jié)果顯示學(xué)生根本沒有從中受益。Byrne質(zhì)疑算法動畫演示的作用,認(rèn)為在這些研究中幫助學(xué)生學(xué)會算法的關(guān)鍵因素并不是圖形演示,而是其他的因素(他認(rèn)為是學(xué)生對算法執(zhí)行動作的預(yù)測)。如果確如Byrne所言,那么這對算法動畫演示的倡導(dǎo)者就是一個沉重打擊。