姜 玥,談文蓉
(西南民族大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,四川 成都,610041)
民族院校的“匯編語(yǔ)言”課程教學(xué)改革探究
姜 玥,談文蓉
(西南民族大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,四川 成都,610041)
針對(duì)民族院校的“匯編語(yǔ)言”課程的教學(xué)現(xiàn)狀和存在的問(wèn)題,提出了“匯編語(yǔ)言”教學(xué)改革的必要性,對(duì)改革的方向做了探討,提出適用于民族院校教學(xué)實(shí)際的教學(xué)思路和方法,取得了良好的教學(xué)效果。
匯編語(yǔ)言;教學(xué)改革;教學(xué)理念
“匯編語(yǔ)言”課程是高等院校計(jì)算機(jī)、自動(dòng)化、電子、通信等專(zhuān)業(yè)的一門(mén)專(zhuān)業(yè)基礎(chǔ)課程,尤其是對(duì)計(jì)算機(jī)專(zhuān)業(yè)來(lái)說(shuō),它是一門(mén)體現(xiàn)軟硬件結(jié)合的基礎(chǔ)課程[1]。匯編語(yǔ)言是學(xué)習(xí)計(jì)算機(jī)技術(shù)的重要基礎(chǔ)。不但能使學(xué)生更好地理解計(jì)算機(jī)的組成及工作原理,深刻理解計(jì)算機(jī)內(nèi)部運(yùn)行機(jī)制,而且還能為程序設(shè)計(jì)打下良好的基礎(chǔ)?!皡R編語(yǔ)言”課程與許多課程聯(lián)系緊密,是“計(jì)算機(jī)組成原理”、“微機(jī)原理”和“嵌入式系統(tǒng)”等課程的先修課如圖1。匯編語(yǔ)言更是在開(kāi)發(fā)嵌入式系統(tǒng)時(shí)必不可少的語(yǔ)言。
圖1 匯編語(yǔ)言與相關(guān)課程的關(guān)系
民族院校學(xué)生的學(xué)習(xí)基礎(chǔ)差別很大。很多漢族學(xué)生在進(jìn)入大學(xué)之前,就已經(jīng)接觸或熟悉過(guò)計(jì)算機(jī),有些甚至已具備較高的水平。然而,從少數(shù)民族地區(qū)考入內(nèi)地高校的少數(shù)民族學(xué)生,其高考成績(jī)大大低于漢族學(xué)生的考分。由于環(huán)境因素,使得他們學(xué)習(xí)基礎(chǔ)普遍較差,甚至很多學(xué)生的漢語(yǔ)基礎(chǔ)就很低,英語(yǔ)基礎(chǔ)就更差了,而匯編語(yǔ)言的諸多指令助記符是取自英語(yǔ)的[2]。他們?cè)谶M(jìn)入大學(xué)前幾乎沒(méi)有接觸過(guò)計(jì)算機(jī),連最基本的計(jì)算機(jī)操作知識(shí)都欠缺。這種巨大的知識(shí)構(gòu)成懸殊使得民族學(xué)生學(xué)習(xí)“匯編語(yǔ)言”這門(mén)涉及軟硬件知識(shí)的課程時(shí),感到非常吃力。同時(shí),老師在教學(xué)上的難度也倍增,既要保證基礎(chǔ)好的同學(xué)能學(xué)到足夠的專(zhuān)業(yè)知識(shí),又要保證基礎(chǔ)差的同學(xué)能跟上進(jìn)度。民族院校的“匯編語(yǔ)言”課程教學(xué)主要存在以下幾個(gè)問(wèn)題。
1.1 切入難度大
匯編語(yǔ)言和硬件結(jié)合緊密,學(xué)生學(xué)習(xí)中感覺(jué)其抽象難懂。傳統(tǒng)的匯編教學(xué)模式通常是直接介紹存儲(chǔ)器,尋址方式,指令系統(tǒng)。但存儲(chǔ)器,寄存器等基礎(chǔ)硬件知識(shí)的理解程度極大地影響到指令系統(tǒng)的學(xué)習(xí)。學(xué)生對(duì)計(jì)算機(jī)內(nèi)部結(jié)構(gòu)認(rèn)識(shí)不夠,對(duì)計(jì)算機(jī)內(nèi)部工作過(guò)程更是理不清頭緒。相關(guān)硬件知識(shí)的不清晰導(dǎo)致指令系統(tǒng)的學(xué)習(xí)混亂。教學(xué)內(nèi)容知識(shí)點(diǎn)過(guò)多,概念性過(guò)于抽象。學(xué)習(xí)指令系統(tǒng)時(shí),介紹大量的指令,量多而不精,同時(shí),與硬件內(nèi)容分離脫節(jié)。匯編語(yǔ)言課程在前兩章會(huì)出現(xiàn)大批新名詞、新概念,如果每一個(gè)名詞、概念都要理解透徹是非常困難的,從而得不償失,引起學(xué)生的厭倦情緒。
1.2 理論和實(shí)驗(yàn)不同步
在傳統(tǒng)教學(xué)模式中,理論教學(xué)與實(shí)驗(yàn)教學(xué)是孤立進(jìn)行的。理論教學(xué)為實(shí)驗(yàn)教學(xué)做鋪墊,實(shí)驗(yàn)教學(xué)輔助理論教學(xué),學(xué)生通過(guò)實(shí)驗(yàn)來(lái)“驗(yàn)證”理論教學(xué)的內(nèi)容。理論教學(xué)通常講述完所有的基本理論知識(shí),包括所有指令和偽指令后,再開(kāi)始學(xué)習(xí)編寫(xiě)和調(diào)試程序。但實(shí)驗(yàn)的開(kāi)展滯后,在匯編語(yǔ)言的理論教學(xué)后,未能及時(shí)通過(guò)實(shí)驗(yàn)強(qiáng)化。掌握匯編語(yǔ)言的上機(jī)及調(diào)試過(guò)程卻是一個(gè)熟能生巧的過(guò)程,需要大量的上機(jī)操作。因此,很難在短時(shí)間內(nèi)同步完成實(shí)驗(yàn),導(dǎo)致實(shí)驗(yàn)效果不佳,學(xué)生產(chǎn)生“學(xué)無(wú)所用,純粹理論”的感覺(jué);反過(guò)來(lái)影響理論教學(xué)的進(jìn)一步進(jìn)行。最終,實(shí)驗(yàn)和教學(xué)脫節(jié),嚴(yán)重地影響了課程的教學(xué)。
針對(duì)以上問(wèn)題,具體采取了以下教學(xué)改革方法,形成匯編語(yǔ)言課程教學(xué)的新模式,促進(jìn)教學(xué)的深入改革。一方面,調(diào)整教學(xué)內(nèi)容來(lái)適應(yīng)計(jì)算機(jī)技術(shù)的發(fā)展;另一方面,改進(jìn)教學(xué)方式來(lái)降低課程的學(xué)習(xí)難度,提高學(xué)生的學(xué)習(xí)興趣,提高整體教學(xué)效果。
2.1 教學(xué)理念的改革
以往的匯編語(yǔ)言課程講授重在程序設(shè)計(jì),針對(duì)匯編語(yǔ)言課程與計(jì)算機(jī)技術(shù)的發(fā)展嚴(yán)重脫離的事實(shí),理清匯編語(yǔ)言課程與其他課程的關(guān)系,充分利用匯編語(yǔ)言最能發(fā)揮和利用計(jì)算機(jī)硬件特性的特征,明確課程的培養(yǎng)目標(biāo),將匯編語(yǔ)言課程講授的目標(biāo)定位于借助匯編語(yǔ)言來(lái)體會(huì)底層編程和深刻理解機(jī)器運(yùn)行程序的機(jī)理。無(wú)論計(jì)算機(jī)硬件如何日新月異地發(fā)展,計(jì)算機(jī)最底層的硬件機(jī)制是沒(méi)有變化的。
2.2 明確學(xué)習(xí)目的
寫(xiě)程序雖然不是匯編語(yǔ)言的強(qiáng)項(xiàng),但卻是理解計(jì)算機(jī)硬件工作原理與計(jì)算機(jī)程序執(zhí)行的重要途徑之一。通過(guò)學(xué)習(xí)和使用匯編語(yǔ)言,能夠感知、體會(huì)、理解機(jī)器的邏輯功能,向上可以理解各種軟件系統(tǒng),向下能夠感知硬件;充分獲取計(jì)算機(jī)底層的編程經(jīng)驗(yàn),深刻理解計(jì)算機(jī)程序的運(yùn)行機(jī)制。學(xué)習(xí)匯編語(yǔ)言就是要緊密接觸底層,保持它的“原汁原味”。教與學(xué)是相輔相成的。因此,為了優(yōu)化學(xué)生的知識(shí)結(jié)構(gòu),提高學(xué)生的認(rèn)知水平,教師應(yīng)強(qiáng)調(diào)新形勢(shì)下學(xué)習(xí)匯編的目的,激發(fā)學(xué)生的學(xué)習(xí)熱情,發(fā)揮其主觀能動(dòng)性。
匯編語(yǔ)言是學(xué)習(xí)后續(xù)專(zhuān)業(yè)課程的工具。通過(guò)學(xué)習(xí)匯編語(yǔ)言,深入地理解計(jì)算機(jī)硬件,掌握計(jì)算機(jī)硬件、操作系統(tǒng)和應(yīng)用程序之間的交互工作。匯編語(yǔ)言操作直接面向硬件,指令操作更直接,通過(guò)一條一條直接控制計(jì)算機(jī)的指令,清晰地看到計(jì)算機(jī)的工作,理解計(jì)算機(jī)的內(nèi)部工作方式,清晰感性地認(rèn)識(shí)計(jì)算機(jī)軟件和硬件之間的聯(lián)系和交互,形成一個(gè)軟、硬兼?zhèn)涞木幊讨R(shí)體系。學(xué)習(xí)匯編語(yǔ)言幫助加深對(duì)高級(jí)語(yǔ)言的理解。雖然現(xiàn)在有許多的高級(jí)語(yǔ)言可以用來(lái)編程,但是要真地理解代碼執(zhí)行的實(shí)際過(guò)程,從本質(zhì)上理解機(jī)器的行為,需要理解匯編指令的執(zhí)行。
2.3 教學(xué)內(nèi)容改革
2.3.1 優(yōu)化教學(xué)內(nèi)容
匯編語(yǔ)言是一種硬件編程語(yǔ)言,是連接軟硬件的橋梁。從不同處理器架構(gòu)在體系結(jié)構(gòu)、指令系統(tǒng)、應(yīng)用領(lǐng)域上的不同切入,講明白系統(tǒng)結(jié)構(gòu)和指令系統(tǒng)結(jié)構(gòu)之間的關(guān)系,再選擇某種典型芯片的匯編語(yǔ)言為實(shí)例,來(lái)驅(qū)動(dòng)匯編基礎(chǔ)知識(shí)的教學(xué),使學(xué)生學(xué)會(huì)如何學(xué)習(xí)、思考和分析。以此類(lèi)推,以后遇到其它的芯片,思維模式是相通的,也就可以舉一反三,觸類(lèi)旁通。同時(shí)幫助學(xué)生建立對(duì)匯編語(yǔ)言底層屬性的感性認(rèn)識(shí)。并且,引導(dǎo)學(xué)生自行通過(guò)多種方式查閱相關(guān)資料,了解多種主流體系結(jié)構(gòu)及對(duì)應(yīng)的指令系統(tǒng),幫助學(xué)生理解硬件與指令系統(tǒng)之間的關(guān)系,增強(qiáng)學(xué)生認(rèn)知結(jié)構(gòu)的可遷移能力。
在以往的教學(xué)中,完全按部就班地介紹完指令系統(tǒng),學(xué)生理解困難。授課內(nèi)容的選擇上,注重教學(xué)內(nèi)容的基礎(chǔ)性和系統(tǒng)性,并結(jié)合國(guó)內(nèi)教學(xué)的實(shí)際特點(diǎn)和學(xué)生的實(shí)際情況,對(duì)授課內(nèi)容進(jìn)行了調(diào)整和整合。精選深入學(xué)習(xí)的指令,而并非將指令系統(tǒng)全盤(pán)介紹。在教學(xué)中,注重軟硬結(jié)合,結(jié)合相應(yīng)的硬件知識(shí),動(dòng)態(tài)觀察指令的運(yùn)行過(guò)程,讓學(xué)生即時(shí)看到指令的具體執(zhí)行狀況,適時(shí)深入到機(jī)器內(nèi)部,觀察到CPU和存儲(chǔ)單元的情況,將抽象的硬件具體化。這樣降低了教學(xué)難度,而且指令學(xué)了馬上能用,即“即學(xué)即用”,學(xué)生也不容易混淆,而更加利于學(xué)生接受。
同時(shí),為了把抽象、難懂的知識(shí)簡(jiǎn)單、直觀地表現(xiàn)出來(lái),使課堂教學(xué)生動(dòng)、直觀、形象,通過(guò)動(dòng)畫(huà)來(lái)模擬和觀察CPU的內(nèi)部結(jié)構(gòu),指令的執(zhí)行過(guò)程和匯編語(yǔ)言的運(yùn)行過(guò)程[3]。
2.3.2 教材建設(shè)
教材是學(xué)生學(xué)習(xí)的主要信息來(lái)源。目前的匯編語(yǔ)言教材主要側(cè)重程序設(shè)計(jì),而部分民族學(xué)生匯編語(yǔ)言的基礎(chǔ)知識(shí)的把握都是個(gè)大問(wèn)題。這也是導(dǎo)致教師難教,學(xué)生難學(xué)的兩難困境的直接原因。于是,后續(xù)的計(jì)算機(jī)組成原理等課程的學(xué)習(xí)和理解,存在著連鎖反應(yīng),即“一門(mén)不通,門(mén)門(mén)不通”。傳統(tǒng)的匯編語(yǔ)言教材里在介紹知識(shí)點(diǎn)時(shí),存在目前不用,在以后再用到,這會(huì)使得用到的時(shí)候,之前學(xué)到的知識(shí)點(diǎn)存在遺忘,并且知識(shí)點(diǎn)之間的連接度不高。盡管傳統(tǒng)的匯編語(yǔ)言教材在知識(shí)的系統(tǒng)性方面較好,但學(xué)生的基礎(chǔ)原因,特別是民族學(xué)生的思維方式,使得采用這類(lèi)教材對(duì)于匯編語(yǔ)言知識(shí)的掌握效果并不好。
改革教材,針對(duì)學(xué)生基礎(chǔ)差,底子薄的現(xiàn)狀,重在抓基礎(chǔ)。目標(biāo)是通過(guò)匯編語(yǔ)言,軟硬兼施地接觸到硬件,將硬件感性化,為后續(xù)的硬件課程奠定良好的基礎(chǔ)。將基礎(chǔ)知識(shí)講通、做通。
因此,遵循以上思路,合理組織教學(xué)內(nèi)容,編寫(xiě)相應(yīng)的教材。在教材的編撰上,打破常規(guī),考慮匯編語(yǔ)言與其他課程之間的關(guān)系,考慮匯編語(yǔ)言知識(shí)點(diǎn)的連接,重新布局講授內(nèi)容的順序,遵循講到即用到,也就是講到的知識(shí)點(diǎn),立刻就能上機(jī)操作。
2.4 教學(xué)方式改革
以往,對(duì)于本科院校教學(xué)方式借鑒的比較多。但是,針對(duì)具體情況,要突破常規(guī)教學(xué)的格局,選擇適合民族院校學(xué)生的教學(xué)方式。
2.4.1 理論和實(shí)驗(yàn)融合
通過(guò)對(duì)教學(xué)內(nèi)容改革,學(xué)生可以從整體上了解計(jì)算機(jī)結(jié)構(gòu)及工作原理,理解清楚指令、操作數(shù)的尋址方式以及指令運(yùn)行的最基本概念和理論。在講述每類(lèi)最基本的指令時(shí),就可以編寫(xiě)程序段,上機(jī)調(diào)試。使學(xué)生逐步接觸指令,感性認(rèn)識(shí)計(jì)算機(jī)的硬件。傳統(tǒng)的匯編語(yǔ)言教學(xué)立足于用匯編指令來(lái)編寫(xiě)源程序。進(jìn)行匯編指令教學(xué)時(shí),側(cè)重于借助指令,利用變量、標(biāo)號(hào)等透視到計(jì)算機(jī)內(nèi)部的表現(xiàn)。學(xué)生在整個(gè)學(xué)習(xí)過(guò)程的每一步都目標(biāo)明確,主題清晰,基礎(chǔ)扎實(shí),同步消化和演練教學(xué)內(nèi)容,達(dá)到循序漸進(jìn)的效果,并且還會(huì)不斷獲得成就感。
匯編語(yǔ)言教學(xué)必須強(qiáng)調(diào)與實(shí)際機(jī)器結(jié)合,特別強(qiáng)調(diào)動(dòng)手訓(xùn)練。將“把實(shí)驗(yàn)環(huán)節(jié)與理論教學(xué)相融合,抓實(shí)驗(yàn)教學(xué)促進(jìn)學(xué)科理論知識(shí)學(xué)習(xí)”的教學(xué)方法貫穿始終,有效地提高了學(xué)生的學(xué)習(xí)興趣??菰锏睦碚摻虒W(xué)與繁雜的實(shí)驗(yàn)教學(xué)緊密結(jié)合,同步進(jìn)行,采用邊學(xué)習(xí)邊實(shí)踐邊理解的方式,每部分的理論知識(shí)都對(duì)應(yīng)相應(yīng)的實(shí)驗(yàn),所介紹的示例程序的分析都深入到機(jī)器內(nèi)部,讓學(xué)生看到機(jī)器具體的操作和運(yùn)行,使學(xué)生有樣板可學(xué),有結(jié)果可見(jiàn)。在教學(xué)中,盡早實(shí)驗(yàn),從硬件知識(shí)的學(xué)習(xí)開(kāi)始,就真實(shí)地去看計(jì)算機(jī)內(nèi)部,學(xué)生有了感性認(rèn)識(shí),學(xué)生理解起來(lái)當(dāng)然就要容易些;學(xué)習(xí)了尋址方式就可以調(diào)試程序,再經(jīng)過(guò)指令系統(tǒng)部分的調(diào)試實(shí)驗(yàn),到完整程序的時(shí)候,對(duì)調(diào)試手段已經(jīng)非常熟悉了。同時(shí),專(zhuān)門(mén)編寫(xiě)的教材本身也融理論和實(shí)驗(yàn)為一體,將以往理論教材和實(shí)驗(yàn)教材合二為一。學(xué)生一書(shū)在手,掌握了基本理論知識(shí)直接上機(jī),快速掌握技能,學(xué)習(xí)難度降低。從而,學(xué)習(xí)效率和效果大大地提高了,為下一步學(xué)習(xí)微機(jī)原理和接口技術(shù)課程、單片機(jī)原理和應(yīng)用、嵌入式課程和計(jì)算機(jī)組成原理等課程打下良好的基礎(chǔ),培養(yǎng)了計(jì)算機(jī)系統(tǒng)能力。
2.4.2 實(shí)驗(yàn)平臺(tái)
目前,X86架構(gòu)的處理器占據(jù)了超過(guò)90%的個(gè)人電腦市場(chǎng),以ARM架構(gòu)為代表的RISC產(chǎn)品則同樣占據(jù)了超過(guò)90%的移動(dòng)計(jì)算市場(chǎng),并且X86架構(gòu)的指令系統(tǒng)大都可以訪問(wèn)存儲(chǔ)器,因而,我們選擇X86架構(gòu)的指令系統(tǒng)來(lái)觀察硬件及數(shù)據(jù)流動(dòng)。
純粹的8086 PC機(jī)已經(jīng)不存在了。但是現(xiàn)在任何一臺(tái)和Intel兼容的計(jì)算機(jī),都能以8086的方式進(jìn)行工作。所以,8086匯編語(yǔ)言是最佳的入門(mén)語(yǔ)言。8086 CPU的匯編語(yǔ)言,結(jié)構(gòu)簡(jiǎn)潔,方便教與學(xué)。從8086匯編語(yǔ)言指令入手,通過(guò)相對(duì)簡(jiǎn)單的8086匯編語(yǔ)言指令深入地切入到機(jī)器內(nèi)部,降低匯編語(yǔ)言入門(mén)學(xué)習(xí)的門(mén)檻難度,使觀察硬件的方式盡可能的簡(jiǎn)單化;避免繁雜的80X86等匯編語(yǔ)言指令集增加學(xué)習(xí)的難度,妨礙觀察硬件的興趣。
2.5 考試方式改革
“匯編語(yǔ)言”課程的突出特點(diǎn)是借助匯編語(yǔ)言來(lái)熟悉存儲(chǔ)器、CPU的各個(gè)寄存器,以及計(jì)算機(jī)的工作機(jī)理?!皡R編語(yǔ)言”如果僅僅是通過(guò)傳統(tǒng)的閉卷筆試的方式來(lái)對(duì)學(xué)生進(jìn)行考核,容易造成學(xué)生以筆試考試為目標(biāo)進(jìn)行學(xué)習(xí),忽略了實(shí)踐環(huán)節(jié),造成學(xué)生動(dòng)手能力差,達(dá)不到預(yù)期的教學(xué)效果。匯編語(yǔ)言是面向機(jī)器的語(yǔ)言,在一個(gè)半小時(shí)的考試時(shí)間內(nèi)也無(wú)法考察出實(shí)際動(dòng)手能力。因此,本課程的考試改革思路是:堅(jiān)持以學(xué)生為本,以培養(yǎng)學(xué)生的實(shí)踐能力為目標(biāo),以激發(fā)學(xué)生的學(xué)習(xí)興趣為動(dòng)力,提高學(xué)生的學(xué)習(xí)效果??荚嚪绞礁母锖?,把原來(lái)在教室里考試改為在實(shí)驗(yàn)室里考試,可以使用計(jì)算機(jī),避免了知識(shí)的死記硬背。
“匯編語(yǔ)言”課程具有實(shí)踐性強(qiáng)、內(nèi)容抽象、需要記憶的東西多等特點(diǎn),這無(wú)疑會(huì)給教學(xué)帶來(lái)相當(dāng)大的困難。但是,在教學(xué)改革中打破傳統(tǒng)的匯編語(yǔ)言教學(xué)模式,從系統(tǒng)結(jié)構(gòu)入手,明確匯編語(yǔ)言的作用,合理安排教學(xué)內(nèi)容、把握難點(diǎn)、軟硬教學(xué)融合,注重理論教學(xué)后的即時(shí)實(shí)驗(yàn),化繁為簡(jiǎn),使得理論和實(shí)驗(yàn)相得益彰,相互促進(jìn)。學(xué)生學(xué)習(xí)的自覺(jué)性和興趣大增, 教學(xué)改革的成效顯著,給教學(xué)工作增添了活力。
教學(xué)改革不是一蹴而就的,是一個(gè)長(zhǎng)期過(guò)程,因此加強(qiáng)“匯編語(yǔ)言”課程的教學(xué)研究在今后仍然是一項(xiàng)有意義的工作。
[1] 張洪業(yè),宋人杰,周欣欣. “匯編語(yǔ)言”教學(xué)改革與實(shí)踐[J]. 計(jì)算機(jī)教育,2009(21):60-61.
[2] 單博煒,陳曉飛,郭蘭英. 包含少數(shù)民族學(xué)生的計(jì)算機(jī)專(zhuān)業(yè)的教學(xué)思路探討[J]. 教育教學(xué)論壇,2012(4):249.
[3] 婁國(guó)煥,吳亞峰,郝勝男. “匯編語(yǔ)言”雙語(yǔ)教學(xué)課程改革與實(shí)踐[J]. 中國(guó)電力教育,2010(22):108.
(責(zé)任編輯 王楠楠)
Teaching Reform and Exploration of Assembly Language in Minority Universities
JIANG Yue, TAN Wen-rong
(School of Computer Science and Technology, Southwest Minzu University, Chengdu Sichuan 610041, China)
Analyzing the current situation and problems in teaching of assembly language in universities for nationalities, this paper points out the necessity of teaching reform of assembly language, discusses the direction of the reform and presents the teaching ideas and methods adapting to the reality of minority universities. The effect is good.
assembly language; teaching reform; teaching idea
2017-03-07;最后
2017-03-29
四川省計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)綜合改革項(xiàng)目。
姜玥(1978-),女,南湖邵東人,副教授,博士,主要從事數(shù)據(jù)挖掘研究。
2096-1383(2017)03-0274-04
G642
A