摘要:匯編語言程序設(shè)計是計算機(jī)專業(yè)本科生的一門必修的專業(yè)基礎(chǔ)課。通過分析當(dāng)前的教學(xué)現(xiàn)狀,從教學(xué)內(nèi)容、實(shí)驗(yàn)教學(xué)、教學(xué)方法、教學(xué)平臺四個方面進(jìn)行了改革。并在教學(xué)中實(shí)踐,取得了良好的教學(xué)效果。
關(guān)鍵詞:匯編語言;教學(xué)方法;教學(xué)改革
中圖分類號:G642
一、引言
匯編語言程序設(shè)計是計算機(jī)專業(yè)本科生的一門必修的專業(yè)基礎(chǔ)課[1],是微機(jī)系統(tǒng)與接口技術(shù)、操作系統(tǒng)等其它核心課程的必要先修課。通過該課程的學(xué)習(xí),培養(yǎng)學(xué)生設(shè)計和編制匯編程序語言的能力,熟悉要求時效性高、直接控制硬件的軟件設(shè)計基本方法。加深學(xué)生對計算機(jī)內(nèi)部運(yùn)行機(jī)制的理解,為后續(xù)課程的打下良好基礎(chǔ)。
二、匯編語言的現(xiàn)狀
該課程教學(xué)主要存在以下問題:
1、課程難,學(xué)時少,學(xué)生積極性不高。
匯編語言程序設(shè)計是直接對底層硬件進(jìn)行編程,需要學(xué)生具備一定的計算機(jī)硬件基礎(chǔ)知識。而且,匯編語言課時少。使得匯編語言中很多趣味性的知識無法在課程中講解。因此,學(xué)生積極性不高。
2、應(yīng)用面窄,就業(yè)形式嚴(yán)峻使學(xué)生學(xué)習(xí)趨向于功利化
匯編語言主要應(yīng)用在單片機(jī)、嵌入式系統(tǒng)的控制等方面。相比于面向?qū)ο蟪绦蛟O(shè)計(java)、網(wǎng)絡(luò)編程、JavaEE軟件技術(shù)、Andorid開發(fā)等這些面向熱門就業(yè)的課程,匯編語言就顯得不那么受歡迎。學(xué)生則認(rèn)為匯編語言學(xué)無所用。
3、教材陳舊,缺乏應(yīng)用類內(nèi)容
目前采用的教材相對陳舊,缺乏面向應(yīng)用型的信息處理開發(fā)系統(tǒng)。大多數(shù)學(xué)校的教學(xué)內(nèi)容主要在實(shí)模式下的16位/32位匯編指令和程序設(shè)計方法,當(dāng)前保護(hù)模式下的Win32匯編得到了廣泛的應(yīng)用,因此,應(yīng)當(dāng)合理的調(diào)整教學(xué)內(nèi)容,使本門課程更適應(yīng)當(dāng)前的應(yīng)用環(huán)境。
4、教學(xué)方法單一
匯編語言程序設(shè)計課程理論性較強(qiáng)、內(nèi)容抽象,常采用集中的“灌輸式”課堂授課,知識的傳授是單向的,對啟發(fā)式、任務(wù)驅(qū)動、案例教學(xué)方法采用的比較少,這樣就無形中將學(xué)生置于被動接收的地位,讓學(xué)生感到枯燥乏味,學(xué)習(xí)的積極主動性不高。
三、教學(xué)改革
該課程教學(xué)改革突破傳統(tǒng)的課程教學(xué)模式,改變課程教學(xué)的理論內(nèi)容、實(shí)驗(yàn)內(nèi)容、教學(xué)方法、實(shí)驗(yàn)手段等不適應(yīng)現(xiàn)代教學(xué)要求的現(xiàn)狀及其存在的問題,構(gòu)建匯編語言程序設(shè)計課程“內(nèi)容先進(jìn)、方法多樣、實(shí)驗(yàn)創(chuàng)新、手段豐富“的教學(xué)新模式和新機(jī)制。主要從以下幾個方面進(jìn)行改革:
1、理論教學(xué)內(nèi)容的改革
匯編語言程序設(shè)計是面向硬件的,以CPU的寄存器、指令系統(tǒng)和存儲單元的組織為基礎(chǔ)。因此,對匯編語言的教學(xué)內(nèi)容改革首先根據(jù)當(dāng)前計算機(jī)技術(shù)現(xiàn)狀選擇合適的環(huán)境。在目前微機(jī)普及程度最高的情況下,大多數(shù)院校采用的匯編語言課程都是基于PC機(jī)的?;谠撻T課程理論抽象、學(xué)時少,學(xué)生興趣不高等特點(diǎn),教學(xué)內(nèi)容主要從以下方面進(jìn)行改革:
1)重新組織教學(xué)內(nèi)容。教學(xué)內(nèi)容既要體現(xiàn)課程的基礎(chǔ)性又要與時俱進(jìn),主要包括以下3部分:
①基礎(chǔ)部分:微型機(jī)計算機(jī)的CPU結(jié)構(gòu),存儲器的組織方式,80x86的三種工作模式。,
②80x86指令部分:以16位指令為基礎(chǔ),結(jié)合80386以上的32位指令的介紹。
③程序設(shè)計部分:以32位匯編語言[2]及Windows編程環(huán)境的內(nèi)容為主,從16位實(shí)模式轉(zhuǎn)換到32位保護(hù)模式,結(jié)合豐富的應(yīng)用性實(shí)例,采用任務(wù)驅(qū)動式的教學(xué)方式,使所學(xué)知識與目前主流的應(yīng)用環(huán)境相結(jié)合,為學(xué)生的創(chuàng)新能力奠定基礎(chǔ)。
2)重新調(diào)整教學(xué)順序。教師需要按照學(xué)生的認(rèn)知順序,打破枯燥的學(xué)習(xí)模式,以指定教材為藍(lán)本,重新組織教學(xué)順序。例如大多數(shù)教學(xué)都是按照書本章節(jié)的順序進(jìn)行講解,比如先學(xué)完指令系統(tǒng)后,再學(xué)編程。這樣會導(dǎo)致教學(xué)內(nèi)容空洞,學(xué)生感覺學(xué)習(xí)枯燥、效果差。因此,指令系統(tǒng)的介紹,可以根據(jù)需要把相應(yīng)的指令分布到后面的程序設(shè)計章節(jié)分別進(jìn)行學(xué)習(xí),從而加深對指令的理解,達(dá)到更好的教學(xué)效果。
3)在學(xué)習(xí)匯編程序設(shè)計相關(guān)知識的過程中,根據(jù)教學(xué)進(jìn)度,分期向?qū)W生推薦一些相關(guān)的書籍和專業(yè)文章,以彌補(bǔ)教材的不足,拓寬學(xué)生的視野,提高學(xué)生的專業(yè)水平。
2、實(shí)驗(yàn)教學(xué)內(nèi)容改革
匯編語言程序設(shè)計是一門實(shí)踐性很強(qiáng)的課程,因此特別注意學(xué)生動手能力的培養(yǎng)。由于實(shí)驗(yàn)課時有限,為了滿足不同層次的學(xué)生的要求,選擇實(shí)驗(yàn)內(nèi)容時,主要應(yīng)選擇具有基礎(chǔ)性、代表性、趣味性的實(shí)驗(yàn),且能夠涵蓋所學(xué)的重點(diǎn)知識。同時,也應(yīng)該鼓勵學(xué)生進(jìn)行高水平的實(shí)驗(yàn)課程設(shè)計。主要設(shè)置三種類型的實(shí)驗(yàn):驗(yàn)證型實(shí)驗(yàn)、綜合型實(shí)驗(yàn)、創(chuàng)新型實(shí)驗(yàn)。
驗(yàn)證型實(shí)驗(yàn)以掌握單元知識為目標(biāo),著重訓(xùn)練基礎(chǔ)編程能力,如數(shù)據(jù)塊操作、數(shù)據(jù)顯示、字符串排列、素數(shù)判斷等。
綜合型實(shí)驗(yàn)融合了本課程知識。如多模塊程序設(shè)計、中斷程序設(shè)計等。
創(chuàng)新型實(shí)驗(yàn)是設(shè)計具有應(yīng)用背景的實(shí)驗(yàn),培養(yǎng)學(xué)生對計算機(jī)知識體系的融會貫通及創(chuàng)新能力。如數(shù)據(jù)庫管理系統(tǒng)設(shè)計、全屏幕編輯器設(shè)計、緩沖區(qū)溢出實(shí)驗(yàn)等。
基于個體的差異性,學(xué)生可以按照自己的能力和興趣選做部分或全部實(shí)驗(yàn),充分發(fā)揮了學(xué)生的主觀能動性。
驗(yàn)收采用現(xiàn)場驗(yàn)收的方法進(jìn)行,并輔以適當(dāng)提問,考察實(shí)驗(yàn)是否是真正由本人完成,在一定程度上避免了拷貝和抄襲現(xiàn)象的,提高了學(xué)生的實(shí)驗(yàn)實(shí)踐能力。
3、教學(xué)方法的改革
匯編語言程序設(shè)計課程的理論性較強(qiáng)、內(nèi)容抽象,傳統(tǒng)的教學(xué)采用集中的“灌輸式”課堂授課方式,讓學(xué)生感到枯燥乏味,學(xué)習(xí)的積極主動性不高。所以,我們應(yīng)當(dāng)采用多元化的教學(xué)方法,如類比教學(xué)法、啟發(fā)式教學(xué)法、任務(wù)驅(qū)動教學(xué)方法、分層次教學(xué)等,針對不同的教學(xué)內(nèi)容,選擇不同的教學(xué)方法,從而引導(dǎo)學(xué)生積極思考,增強(qiáng)學(xué)生的信心和參與意識,提高教學(xué)水平。
比如,對于難以理解的間接尋址方式,可以采用與C語言中的指針進(jìn)行類比。對于難以理解的轉(zhuǎn)移地址的形成,可以通過制作動畫的方式來幫助學(xué)生理解,并以case程序設(shè)計來進(jìn)行鞏固。對于程序設(shè)計部分,采用任務(wù)驅(qū)動的方式,通過“提出問題-分析問題-解決問題”的方式來學(xué)習(xí)程序設(shè)計方法。
4、實(shí)驗(yàn)教學(xué)平臺的改革
Windows操作系統(tǒng)及32位保護(hù)模式已成為匯編語言的發(fā)展趨勢。摒棄傳統(tǒng)的DOS環(huán)境,采用匯編語言集成開發(fā)環(huán)境Masm for Windows。使匯編程序的編輯、編譯、連接、調(diào)試等過程變的簡便,減輕了學(xué)生學(xué)習(xí)負(fù)擔(dān),提高學(xué)生上機(jī)的興趣和效率。
四、小結(jié)
匯編語言程序設(shè)計是計算機(jī)相關(guān)專業(yè)的專業(yè)必修課程,無論在教學(xué)、科研中都處于非常重要的地位。如何提高匯編語言程序設(shè)計課程的教學(xué)質(zhì)量和效率,讓學(xué)生能夠系統(tǒng)地掌握匯編語言程序設(shè)計的原理、技術(shù)和實(shí)現(xiàn)方法,培養(yǎng)學(xué)生程序設(shè)計的能力,教師的作用異常重要。教師在加強(qiáng)自身專業(yè)素質(zhì)提高的基礎(chǔ)上,應(yīng)積極改進(jìn)教學(xué)方法,提高教學(xué)效率。
參考文獻(xiàn):
[1]王海波.匯編語言課程改革的研究與實(shí)踐[J].科學(xué)大眾,2015(12).
[2]鄒國紅,楊鴻雁. 匯編語言課程教學(xué)改革與實(shí)踐[J] .鞍山師范學(xué)院學(xué)報,2011(6).