黃蘇雨
【摘 要】匯編語言課程是計算機科學及相關專業(yè)的一門核心專業(yè)課,是一門能夠利用計算機的硬件特點來直接控制計算機硬件的語言。本文分析目前匯編語言教學現(xiàn)狀,有針對性地對相關的課程教學內容進行改革和優(yōu)化,同時注重實驗環(huán)節(jié),從實驗平臺及實驗內容等方面提出了相應的改進措施及方法。
【關鍵詞】匯編語言;教學改革;實驗教學;從DOS到Windows
1.匯編語言課程教學現(xiàn)狀分析
匯編語言是計算機科學、自動化及電氣自動化類專業(yè)的一門核心專業(yè)課程。匯編語言是當今能夠最大限度地發(fā)揮計算機硬件特性,并且滿足實時處理要求的最有效的語言。在對程序的執(zhí)行時間和占用空間要求很高、控制硬件底層的場合,必須要使用匯編語言才能滿足要求。因為無論CPU的速度如何加快,內存容量如何增長,空間、速度及性能對于有競爭力的軟件來講永遠都是十分重要的。另外,匯編語言還可以與高級語言混合編程,以發(fā)揮各自的優(yōu)點,提高開發(fā)和執(zhí)行效率。因為匯編語言是一種面向機器的符號語言,相對于高級語言來說不易掌握,因此,使用匯編語言編程對程序設計人員極具挑戰(zhàn)性。對計算機相關專業(yè)的學生來說,匯編語言是需要掌握的重要專業(yè)基礎知識之一。
2.明確教學目的,改革教學內容和教學方法
2.1 激發(fā)學生的學習熱情
匯編語言與許多課程聯(lián)系緊密,它是操作系統(tǒng)、計算機組成原理、嵌入式系統(tǒng)等課程的基礎,在嵌入式系統(tǒng)開發(fā)時更是必不可少的語言。匯編語言課程指令系統(tǒng)多,學習起來比較枯燥,不像對于高級語言的學習一樣立竿見影。因此,為了提高學生學習匯編語言的積極性,教師應正面引導,教育學生在學習過程中少一些急功近利的思想,應著眼于長遠的、全面的技術成長。針對部分學生認為匯編語言跟不上時代發(fā)展的這種思想,教師應以引導,目前流行的嵌入式系統(tǒng)的硬件的檢測和控制部件都是由匯編語言來編寫的,另外介紹一下計算機病毒的作機理,從而提高學生學習匯編語言的積極性,激發(fā)學生的學習熱情。
2.2 改革教學內容
不同于高級語言的教學模式,匯編語言是一種硬件編程語言,是連接軟硬件的橋梁。一方面,匯編語言與芯片密切相關,學習匯編語言時應具備一定的硬件基礎知識,如在講解匯編語言指令集時,要與CPU的功能結構結合起來,把地址、數(shù)據(jù)和控制信息的傳遞進行分解;另一方面,又不需要緊跟著產品來講授,只要重點選擇一種典型的匯編語言指令集講清楚、講透徹,使學生掌握學習與思考的方法,今后遇到其他的芯片,也就可以舉一反三,觸類旁通。
在講解一種匯編語言指令集時,應突出其重點、難點,如分段管理技術、尋址方式、堆棧管理、中斷技術等等。為了便于后續(xù)課程的學習,在學習尋址方式和指令集時就補充介紹調試工具DEBUG中各種命令的用途,并演示它們的使用方法。在上機課時學生編寫簡短的小程序上機實踐DEBUG命令,驗證指令,得到運行結果,通過DEBUG來觀察寄存器的內容和存儲器的內容,同時通過T命令,可以跟蹤每條指令執(zhí)行后寄存器和存儲器的變化,這是調試程序和發(fā)現(xiàn)邏輯錯誤非常有效的手段,一旦學生真正掌握了DEBUG的使用,對深入了解計算機的工作原理和指令系統(tǒng)集將起到重要的作用。
由于匯編語言的指令很多,涉及的知識點抽象,學生初學時往往不太適應,相關的知識點容易混淆,教師應及時對講授過的內容進行比較與總結。課堂上,應適當增加講授例題數(shù)量,在不同的教學階段,例題的側重點不一樣。初級階段,例題主要涉及匯編語言書寫的格式與匯編語言指令的使用;中級階段,例題講授的是如何用匯編語言指令實現(xiàn)匯編語言流程;后續(xù)階段,例題重點講解匯編語言程序設計算法的設計,分析、解決問題的方法和思路。而在學生掌握了基本內容及重點內容的基礎后,教師應從系統(tǒng)的整體角度分析匯編語言課程在整個硬件知識體系中的作用,讓學生從更高層次理解并使用匯編語言。
3.注重實驗環(huán)節(jié),改革實驗教學
實驗教學環(huán)節(jié)是檢驗和鞏固已學知識的一個重要手段,是培養(yǎng)學生創(chuàng)造性的關鍵環(huán)節(jié),也是課程教學改革的一個重要方面。然而學生在匯編語言這門課程中,對所學的知識缺乏必要的全面認識,因此實驗環(huán)節(jié)在整個教學活動中就占據(jù)了重要的地位。
3.1 實驗教學平臺
傳統(tǒng)的80X86匯編語言實驗一般都是在DOS環(huán)境下進行的,用編輯程序編寫源程序,然后用編譯程序(MASM命令)將源程序編譯成目標程序(即.obj文件),然后用連接程序(LINK命令)將目標文件轉換成可執(zhí)行文件(即.exe文件),在DOS環(huán)境中執(zhí)行這些命令時,后面往往需要緊跟各種參數(shù),而且在一個源程序進行編譯連接的過程中往往不能一次通過,可能會出現(xiàn)各種錯誤,這樣上面的過程需要多次的重復,因此在DOS的命令行上要頻繁進行上面的編譯和連接操作,非常的繁瑣,容易引起學生厭煩。
目前流行的是Windows操作系統(tǒng),學生對DOS操作系統(tǒng)的使用非常陌生,DOS的各種命令也都很少使用,因此在做匯編實驗時,會影響學生的上機效率和熱情[2]。我們應該緊跟時代步伐,與目前的主流計算機應用環(huán)境相結合。采用MASM和VisualC/C++兩種開發(fā)環(huán)境,提高語言聯(lián)合編程能力。
3.2 實驗教學內容
在實驗內容的安排上,教師應根據(jù)授課的進度及學生的掌握程度,與教學目標相匹配,精心選擇一些有代表性的、有實用價值的實驗內容。實驗的內容應包括:指令系統(tǒng)及調試工具DEBUG使用;匯編語言程序設計上機環(huán)境及過程;順序、分支、循環(huán)基本結構程序設計;子程序設計和宏匯編程序設計;中斷調用程序設計;綜合性實驗等。
為了提高學生的學習興趣,中斷調用實驗是必不可少的,這需要選取一些學生感興趣的、具有觀測效果的實驗。對于能力比較強的學生,可以讓他們試一試底層操作,如BIOS調用、I/O操作,對顯示器以及硬盤的控制等,那樣會令這些學生體會到學習匯編語言的快樂,大大提高學生編寫匯編語言程序的自信心和實踐能力。
4.總結
匯編語言是計算機專業(yè)一門重要而又難學的課程,這要求教師在教學過程中必須不斷學習、創(chuàng)新,在教學改革的同時努力提高學生的實踐能力。
參考文獻
[1]張雪蘭,譚毓安,李元章.匯編語言程序設計課程教學改革與創(chuàng)新能力培養(yǎng)[J].計算機教育,2008(8):22-23
[2]焦殿科,郭延鋒.計算機專業(yè)“匯編語言程序設計”課教學改革研究與探討[J].遼寧工學院學報,2007,9(6):123-125