張晴暉 李俊萩 彭金晶 馬志鵬
摘要:計算機組成原理是計算機科學與技術(shù)專業(yè)的一門主干核心課程。本文分析了該課程教學過程中存在的問題,指出加強課程建設(shè)的必要性,并對課程表述方式、教學模式與技術(shù)手段以及實驗方法等各個方面的改革進行了探索。
關(guān)鍵詞:計算機組成原理;教學改革;EDA;Moodle
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2016)16-0197-02
計算機組成原理是計算機類各專業(yè)的主干課程之一,在整個計算機系統(tǒng)體系結(jié)構(gòu)中起到承上啟下的作用。自2008年起列為碩士研究生入學專業(yè)課綜合考試,全國統(tǒng)一命題重點課程,各高校對該課程都十分重視,相關(guān)專業(yè)都列入強化建設(shè)的重點課程[1]。
一、計算機組成原理教學現(xiàn)狀分析
目前,計算機組成原理教學中存在著較多的問題。許多計算機專業(yè)的學生,特別是非重點本科院校的學生,常常具有“喜軟怕硬”的特點。特別是有些院校在專業(yè)課程的設(shè)置上也“重軟輕硬”。究其原因,主要是由以下幾方面造成的。
1.該門課程自身的特點。計算機組成原理是一門承上啟下的課程,其涵蓋的知識面很寬、跨度大、教學內(nèi)容多,并且較多概念和實現(xiàn)的方法具有一定的抽象性,學生理解起來具有一定的難度[2]。同時,課程中與硬件有關(guān)的許多理論知識只有通過實驗環(huán)節(jié)才能加深理解。但很多高校由于學時有限,沒有開設(shè)實驗,學生無法通過實驗環(huán)節(jié)進一步加深理解。因而,學生很可能因為部分概念和原理無法清晰的掌握,而失去繼續(xù)學習的興趣和動力。反之,上層軟件開發(fā)由于與實際應(yīng)用掛鉤、操作多于理論、學生因易上手更能獲得成就感等原因,更能吸引學生的興趣。
2.實驗環(huán)節(jié)的問題。傳統(tǒng)的計算機組成原理的實驗課程是基于X86的實驗箱,采用連線的方式進行。該方式需要學生采用匯編語言進行程序設(shè)計,并在試驗箱上完成大量的連接線操作。這種方式面臨的問題是:首先,由于學時的原因,學生可能并沒有學習過匯編語言;第二,實驗箱的電路由通用集成電路組成,與理論教學中使用的電路并不能直接的對應(yīng)上;第三,在實驗過程中,實驗箱上的連線經(jīng)常接觸不良,指導(dǎo)教師和學生不得不將大量的時間耗費在連接線的操作上。另外,實驗箱的功能難以擴展,實驗內(nèi)容相對比較固定,主要是驗證性實驗,無法進行有創(chuàng)意的或綜合性較強的設(shè)計性實驗。這些問題導(dǎo)致學生無法真正通過實驗環(huán)節(jié)加深理論知識的理解,而只是機械的按照操作步驟完成程序的錄入或連接線的接入,更難以充分調(diào)動學生的創(chuàng)新意識。
3.社會需求的導(dǎo)向。目前,“互聯(lián)網(wǎng)+”時代正在來臨。這是一種利用信息通信技術(shù)以及互聯(lián)網(wǎng)平臺,讓互聯(lián)網(wǎng)與傳統(tǒng)行業(yè)進行深度融合的經(jīng)濟發(fā)展新形態(tài)。這種融合的模式使得不同行業(yè)的許多企業(yè)加大了對計算機人才的需求,相應(yīng)的增加了許多計算機相關(guān)崗位。但目前,大部分這種與互聯(lián)網(wǎng)融合的模式還停留在不是很深入的層面,這些崗位的需求也主要集中在Java、.net、PHP、Python以及其他上層開發(fā)軟件研發(fā)人員上。這樣為了更好的就業(yè),學生在學習上必然重視與應(yīng)用軟件相關(guān)的課程,而忽視抽象的計算機專業(yè)基礎(chǔ)類課程。同理,某些計算機院系在課程設(shè)置上也大量增加此類課程的學時,而削減專業(yè)基礎(chǔ)相關(guān)課程的學時。
4.學生的學習的主觀能動性不足。由于高校招生規(guī)模不斷擴大,很多高校的教學與管理資源不足,再加上游戲機、電腦、手機等電子產(chǎn)品的沖擊,學生學習的主動性和積極性整體下滑是不爭的事實,尤其是非重點二本院校。此類高校有相當數(shù)量的學生的第一志愿可能并不是計算機專業(yè),他們的專業(yè)興趣不濃,畢業(yè)后也不想從事本專業(yè)相關(guān)的工作,讀大學可能只是想獲得本科文憑。因此,這部分學生在遇到計算機組成原理這類比較抽象的課程時,學習過程中稍稍遇到挫折,便可能選擇放棄。
二、計算機組成原理課程建設(shè)的必要性
雖然存在著以上諸多問題,但因此就減少該門課程的學時或者是放棄該門課程,而加大應(yīng)用軟件的學時,對計算機專業(yè)來說就顯得本末倒置了。我們認為為了培養(yǎng)出高層次的計算機人才,加強計算機組成原理課程的建設(shè)是有必要的。
1.知識環(huán)節(jié)的銜接的需要。計算機組成原理雖然屬于硬件類課程,但其在計算機的軟硬件課程之間起承上啟下的作用[3]。因此具有良好的計算機組成原理基礎(chǔ),對操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)、C程序設(shè)計等軟件類課程的有關(guān)知識點的理解具有極大的幫助作用。畢竟硬件是軟件運行的立足點,數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)等課程中許多難以理解的行為都是與計算機硬件行為息息相關(guān)的。
2.應(yīng)對競爭的需要。目前雖然企業(yè)對計算機專業(yè)人才的需求較大,但計算機專業(yè)的學生面臨的競爭還是比較激烈。由于上層軟件開發(fā)的門檻較低、上手較快,很多相近專業(yè)或其他專業(yè)的學生通過自學或者是培訓班培訓就可以應(yīng)聘這些崗位。再則,上層軟件開發(fā)具有很強的應(yīng)用背景,需要開發(fā)人員具有較強的專業(yè)知識,很多時候非計算機專業(yè)的學生在具有一定的編程能力后可能還更加具有競爭力。對計算機專業(yè)的學生來說,要在競爭中處于優(yōu)勢,沒有扎實的計算機基礎(chǔ),單單只是對某些開發(fā)軟件的入門、編程工具的熟悉是不行的。一個優(yōu)秀的程序設(shè)計人員,應(yīng)該能夠?qū)⒂嬎銠C組成原理、操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)、編譯原理等課程融會貫通。只有這樣,計算機專業(yè)的學生才能成為高層次的計算機人才,在競爭中才具有優(yōu)勢。
3.更好的把握就業(yè)機會的需要。目前不僅僅是“互聯(lián)網(wǎng)+”技術(shù)蓬勃發(fā)展,與之密切相關(guān)的物聯(lián)網(wǎng)、可穿戴計算機、智能家居、智能硬件等新技術(shù)發(fā)展勢頭也非常迅猛,與這些技術(shù)相關(guān)的工作崗位也非常多。而這些技術(shù)更加偏向于底層,需要從業(yè)人員具有良好的計算機組成、操作系統(tǒng)、嵌入式技術(shù)、數(shù)據(jù)結(jié)構(gòu)以及程序開發(fā)基礎(chǔ),而這正應(yīng)該是計算機專業(yè)學生具有的優(yōu)勢。
三、對改革的一些思考
對如何提高學生學習的主動性,我們有如下一些思考。
1.加大對電子課件的研制與投入。計算機組成原理課程沒有太多的數(shù)學公式的推導(dǎo),學生學習的難度按理本不應(yīng)該太大。但用語言或者文字的方法來描述計算機的行為顯得過于抽象,從而導(dǎo)致學生理解起來非常吃力。而圖像、動畫等表現(xiàn)形式往往能使學生茅塞頓開,幫助其對相應(yīng)知識點的理解。因而,在教學構(gòu)成中采用圖像和動畫等表現(xiàn)形式是很有必要的。目前,一些較經(jīng)典的計算機組成原理的教材的電子課件已經(jīng)做得很好,很多高校均直接無修改的應(yīng)用于教學。這些課件已經(jīng)包含了動畫設(shè)計,但這些動畫主要還是采用PowerPoint進行設(shè)計,在一些知識點的展示上還不夠具體和形象。因此,對一些難以講訴的難點、重點,教學單位應(yīng)該投入時間和精力,采用Flash等方式設(shè)計更加形象生動的動畫來進行知識點的展示。
2.基于Moodle的教學方式。由于課時有限的原因,學生在課堂中無法完全理解所教授內(nèi)容,必然要用大量的時間在課外進行課程的學習。如何有效的利用課外時間進行學習,就成了教學中一個非常重要的環(huán)節(jié)。Moodle(Modular Object-Oriented Dynamic Learning Environment),是一套基于“社會建構(gòu)主義理論”設(shè)計開發(fā)的開放源代碼的網(wǎng)絡(luò)教學平臺,在網(wǎng)絡(luò)教學中正得到廣泛運用[4]。任課教師可以通過該網(wǎng)絡(luò)教學平臺,構(gòu)建教學資源庫,以提供給學生進行自行學習;同時,還可以構(gòu)建測試平臺,幫助學生對學習情況進行自我評價;特別的,我們可以通過添加討論、聊天、投票等活動的方式,在教師和學生之間搭建一個交流平臺。這種基于Moodle的教學方式能夠不受時間、空間的限制,推動學生自主學習,增強了學生的參與意識,能激發(fā)學生學習興趣[5]。
3.實驗教學的改革。EDA技術(shù)以大規(guī)??删幊踢壿嬈骷樵O(shè)計載體,以硬件描述語言為系統(tǒng)邏輯描述的主要表達方式,以計算機、大規(guī)??删幊踢壿嬈骷拈_發(fā)軟件及實驗開發(fā)系統(tǒng)為設(shè)計工具,用軟件的方式自動完成硬件系統(tǒng)設(shè)計的一門新技術(shù)[3]。應(yīng)用該技術(shù)可以在行為層對數(shù)字電路進行描述,而使數(shù)字系統(tǒng)的設(shè)計變得更加容易。因此將其應(yīng)用在計算機組成原理實踐課是可行的。國內(nèi)外不少高校均開始將EDA技術(shù)應(yīng)用到計算機組成原理教學中[6]。這些高校一般也購置了EDA實驗箱,并開設(shè)了EDA技術(shù)課程,講授HDL以及FPGA/CPLD相關(guān)知識,而在該課程實驗中設(shè)計的鎖存器、存儲器、加法器、乘法器、CPU等模塊均可以應(yīng)用到組成原理的實驗中。因此,整個組成原理課程的實驗都可以基于HDL+FPGA的模式來完成。這種實驗?zāi)J侥芗訌妼W生對計算機各個部件實現(xiàn)的原理,各個部件間地址、數(shù)據(jù)、控制信息的實現(xiàn)和傳輸?shù)戎R環(huán)節(jié)的理解,讓學生能從整機系統(tǒng)上掌握計算機的組成和模型機的設(shè)計。
綜上所述,為了培養(yǎng)出更加符合計算機專業(yè)特色、滿足市場對計算機人才需求的專業(yè)人才,我們應(yīng)該加大計算機組成原理課程的建設(shè)。在課程表述方式、教學模式與技術(shù)手段以及實驗方法等各個方面均要結(jié)合實際進行有針對性的改革和探索,同時在教學管理上也應(yīng)投入更多的精力,力爭更大程度的激發(fā)學生的學習興趣,調(diào)動學生學習的主觀能動性,讓該門課程真正在學生的知識結(jié)構(gòu)上起到承上啟下的作用。
參考文獻:
[1]時海亮.關(guān)于計算機組成原理實驗課安排的研討[J].電子設(shè)計工程,2012,20(9):11-13.
[2]王慶香,蔡逸儀,等.“計算機組成原理”實踐教學的新方法探索[J].實驗室研究與探索,2007,26(12):361-363.
[3]潘松,潘明.現(xiàn)代計算機組成原理[M].北京:科學出版社,2007.
[4]鄧國民.基于Moodle的《現(xiàn)代教育技術(shù)》網(wǎng)絡(luò)課程的開發(fā)和應(yīng)用[D].成都:四川師范大學,2008.
[5]孔維宏,高瑞利.基于Moodle的混合式學習設(shè)計與實踐研究[J].中國電化教育,2008,(253):80-83.
[6]蔣本珊,王娟,等.計算機組成原理實驗改革初探[J].實驗室研究與探索,2007,26(12):270-273.