文章編號:1672-5913(2008)08-0144-02
摘要:本文從教材建設、課程教學內容改革、教學方式手段改革、實驗平臺創(chuàng)新、實驗改革等方面介紹了我院在“匯編語言程序設計”課程的教學改革實踐。
關鍵詞:匯編語言程序設計;實驗平臺;教學改革
中圖分類號:G642
文獻標識碼:B
1教材系列化建設
我們以CCC2002為依據(jù),參考IEEE-CSACM 制定的計算機課程指南,閱讀大量的國內外相關優(yōu)秀教材,結合課程組科研實踐成果,按照系列化建設的思路,先后編寫完成了《Intel 80x86/Pentium匯編語言程序設計》、《匯編語言程序設計(從DOS到Windows)》、《Windows匯編語言程序設計教程》、《Windows匯編語言程序設計實驗指導》等4本教材。其中1本被評為2006年北京市高等教育精品教材,1本被列為2007年“普通高等教育“十一五”國家級教材規(guī)劃”,2本作為2007年北京高等教育精品教材建設項目。通過編寫、使用這些教材,為教學內容改革奠定了堅實的基礎。
2教學內容及教學方法改革
在教學內容和方法上加強與“微機原理與接口技術”、“計算機組織與結構”、“操作系統(tǒng)”等課程間的聯(lián)系,有利于各門課程之間的融會貫通。教學內容體現(xiàn)課程的時代性和先進性,以32位匯編語言及Windows編程環(huán)境的內容為主,從16位實模式轉換到32位保護模式,結合豐富的應用性實例,使所學知識與目前主流的應用環(huán)境相結合,為學生的創(chuàng)新能力奠定基礎。
為實現(xiàn)教學模式從“教學型”向“研究型”的轉變,需要充分研究學生的認知過程,掌握認知規(guī)律。根據(jù)“匯編語言程序設計”課程本身的理論抽象性和鮮明應用性,課程組以建構主義理論為基礎,探索并改進教學方法。在教學設計中體現(xiàn)以學生為中心、以教師為主導的思想,采用重點難點精講、對比教學、形象教學、重視實驗等方法,用多媒體手段、典型實例來展現(xiàn)抽象的編程概念。采用現(xiàn)代化網絡教育技術建立了課程網站及網絡教室,加強師生互動,拓展了交流空間。
例如,在多門專業(yè)課中均涉及到“中斷”概念,在匯編語言程序設計課程中以編程實例將它具體化,使學生對抽象的理論概念有了直接的認識,從軟件和硬件兩個角度加深了對中斷機制底層的深層次理解,提高了學習興趣。
又如學生難于理解間接尋址方式,但學生在學習本課程時已有了C語言知識,在教學中就把間接尋址方式與C語言的指針類比,通過與先前知識的銜接,經過對比學習,使學生建構、衍生出更深層次的信息,很容易對新知識消化。對于較難理解的程序轉移地址的形成,采用動畫方式幫助學生理解,并通過CASE結構程序設計實踐鞏固。把宏指令與過程及高級語言的函數(shù)對比,學生很快掌握了其設計方法,他們通過主動對知識的處理和轉化,又總結出“宏實際更像高級語言的預定義,用到它的地方都會有它一份拷貝,所以宏可能讓你的真正代碼量劇增”。
通過精心組織教學,選擇與實際應用密切結合的教學案例,在課堂上和網絡支撐平臺上增加總結和討論環(huán)節(jié),鼓勵學生主動反思,從而調整個體的認知,幫助學生實現(xiàn)在原有認知基礎上新知識的整合,在融合了多門課程知識的基礎上,形成系統(tǒng)的知識觀念,提高綜合應用和創(chuàng)新能力。
3構建先進的實驗平臺
在微機系統(tǒng)的教學和實驗內容上,Windows操作系統(tǒng)及32位保護模式已成為匯編語言的發(fā)展趨勢。然而,目前Windows環(huán)境下還沒有一種專門用于匯編語言的主流開發(fā)工具,而底層匯編語言編程所面向的硬件型號和接口又存在巨大差異。為此,課程組開展了改革匯編語言程序設計實驗環(huán)境的探索,編寫了《Windows匯編語言程序設計實驗指導》教材,構建了新型的實驗環(huán)境,采用Microsoft Visual C/C++集成開發(fā)工具來編寫、調試匯編程序(見下圖),使匯編程序的編輯、編譯、連接、調試等過程均與C/C++程序一致,減輕了學生學習負擔,提高了C/C++與匯編混合語言編程能力。應用虛擬機軟件技術,使匯編語言編程面向虛擬的、統(tǒng)一的硬件及其接口,保證了實驗環(huán)境的統(tǒng)一性,提高了實驗效率。
4開設體現(xiàn)前沿性、先進性的匯編語言實驗
匯編語言程序設計是一門實踐性很強的課程。課程組跟蹤計算機軟硬件技術的最新發(fā)展,對國內外的相關課程教學及實踐進行了深入的調研,結合在科研實踐中取得的部分成果,開設出一系列具有鮮明應用特色的驗證型、綜合型和創(chuàng)新型的層次實驗,并寫進《Windows匯編語言程序設計實驗指導》教材中,進一步鞏固理論教學內容。

圖 VC集成環(huán)境下的匯編語言調試
驗證型實驗以掌握單元知識為目標,著重訓練基礎編程能力,如數(shù)據(jù)塊操作、數(shù)據(jù)顯示、字符串排序、素數(shù)判斷、有序數(shù)組合并等。
綜合型以融合本課程知識為主,如多模塊程序設計、中斷程序設計、線程同步、文件管理等。
創(chuàng)新型以設計具有應用背景的實驗為主,培養(yǎng)學生對計算機知識體系的融會貫通及創(chuàng)新能力。如數(shù)據(jù)庫管理系統(tǒng)設計、全屏幕編輯器設計、緩沖區(qū)溢出實驗、讀取硬盤序列號、硬盤DMA等。
基于個體的差異性,學生可以按照自己的能力和興趣選做部分或全部實驗,充分發(fā)揮了學生的主觀能動性。這種強調自主學習的教學過程和方法,有效地促進了學生自我認知的發(fā)展和新知建構。通過實踐環(huán)節(jié),提高了學生的程序設計能力,為學習后續(xù)專業(yè)課程,設計硬件驅動、性能優(yōu)化、代碼對抗等底層系統(tǒng)級軟件打下堅實基礎,培養(yǎng)了學生的創(chuàng)新能力。
參考文獻
[l] 李未. 提高教育質量,培養(yǎng)創(chuàng)新人才[J]. 計算機教育,2008,(1).
[2] 肖川. 主體參與:自主學習的要義[J]. 人民教育,2003,(22).
[3] 張雪蘭等. 匯編語言程序設計(從DOS到Windows)[M]. 北京:清華大學出版社,2006.
[4] 譚毓安等. Windows匯編語言程序設計實驗指導[M]. 北京:清華大學出版社,2008.