摘要:匯編語(yǔ)言是一種能充分發(fā)揮和利用計(jì)算機(jī)硬件特性的語(yǔ)言,但在高職高專院校教學(xué)中,內(nèi)容滯后于硬件的發(fā)展,與實(shí)際脫節(jié),學(xué)生缺乏學(xué)習(xí)積極性。針對(duì)這一現(xiàn)狀,本文提出其重要性,并從教學(xué)內(nèi)容、理論與實(shí)驗(yàn)教學(xué)方式上作了一些改革。
關(guān)鍵詞:匯編語(yǔ)言;交互式教學(xué);DEBUG
《匯編語(yǔ)言》是計(jì)算機(jī)提供給用戶的能利用計(jì)算機(jī)的所有硬件特性并能直接控制硬件的語(yǔ)言,它不僅是計(jì)算機(jī)組成原理、接口技術(shù)、控制系統(tǒng)、操作系統(tǒng)等核心課程的先修課,而且對(duì)于訓(xùn)練學(xué)生掌握程序設(shè)計(jì)方法和技能,熟悉上機(jī)操作和程序調(diào)試技術(shù)有獨(dú)到之處。從軟件的角度,《匯編語(yǔ)言》使用了中斷技術(shù),ROM BIOS功能調(diào)用,DOS功能調(diào)用以及對(duì)配套芯片端口的編程,在實(shí)時(shí)控制及工業(yè)過程控制領(lǐng)域起重要作用。從目前我國(guó)的國(guó)情來看,我們是發(fā)展中國(guó)家,要趕超世界經(jīng)濟(jì)強(qiáng)國(guó)就必須在工業(yè)上不斷革新技術(shù),使工業(yè)生產(chǎn)逐步在計(jì)算機(jī)控制下實(shí)現(xiàn)自動(dòng)化,要提高工業(yè)領(lǐng)域的計(jì)算機(jī)應(yīng)用水平,需要大量掌握計(jì)算機(jī)應(yīng)用技術(shù)和控制基礎(chǔ)知識(shí)的應(yīng)用人才,以適應(yīng)市場(chǎng)的要求。從高職高專院校培養(yǎng)人才教育的辦學(xué)方向來看,按照市場(chǎng)需求,培養(yǎng)生產(chǎn)、建設(shè)、管理和服務(wù)第一線的高級(jí)技術(shù)應(yīng)用性人才,教育更應(yīng)以應(yīng)用為主。《匯編語(yǔ)言》課程集硬件、軟件兩方面為一體,無疑應(yīng)該選為高職高專類計(jì)算機(jī)專業(yè)的必修課,并且隨著硬件和軟件技術(shù)的發(fā)展以及計(jì)算機(jī)應(yīng)用領(lǐng)域廣度和深度的拓展,必須重視《匯編語(yǔ)言》課程的教學(xué)改革。
1. 《匯編語(yǔ)言》的教學(xué)現(xiàn)狀
目前,在眾多程序設(shè)計(jì)語(yǔ)言中,匯編語(yǔ)言是面向機(jī)器的語(yǔ)言。雖然匯編語(yǔ)言可以充分利用計(jì)算機(jī)的硬件特性,用于編制對(duì)時(shí)間和空間要求很高的程序,在需要直接控制硬件的場(chǎng)合,匯編語(yǔ)言更是無可替代的。但是隨著Windows、Linux以及Unix等多任務(wù)的操作系統(tǒng)出現(xiàn),DOS操作系統(tǒng)慢慢地退出歷史舞臺(tái),建立在該操作系統(tǒng)之上的8086匯編語(yǔ)言也逐漸遠(yuǎn)離了人們的視線。這也是匯編語(yǔ)言課程的教學(xué)所面臨的最大尷尬。目前,絕大多數(shù)的高職高專院校開設(shè)本課程的教材仍然停留在DOS下的8086匯編語(yǔ)言階段,教學(xué)內(nèi)容更新速度滯后于軟件和硬件的發(fā)展速度,不適應(yīng)當(dāng)前計(jì)算機(jī)技術(shù)發(fā)展,與實(shí)際脫節(jié),學(xué)生對(duì)其重要性認(rèn)識(shí)不夠,缺乏學(xué)習(xí)積極性。
2. 《匯編語(yǔ)言》的教學(xué)改革
多數(shù)高職高專學(xué)校將匯編語(yǔ)言仍然指定為8086匯編程序設(shè)計(jì),教學(xué)手段、方法比較陳舊,這對(duì)于提高該課程的教學(xué)質(zhì)量是不現(xiàn)實(shí)的,建議從以下幾方面進(jìn)行教學(xué)改革。
2.1. 理論內(nèi)容的教學(xué)改革方法
2.1.1進(jìn)行企業(yè)發(fā)展史和科技發(fā)展的教育,誘發(fā)學(xué)生的學(xué)習(xí)興趣。教師在上理論課時(shí)就要巧妙地設(shè)計(jì)教案,把一些大企業(yè)的發(fā)展史介紹給學(xué)生,使學(xué)生對(duì)計(jì)算機(jī)硬件編程由陌生進(jìn)而產(chǎn)生興趣。如關(guān)于儀器/儀表控制、家用電器和民用產(chǎn)品控制等眾多企業(yè)的現(xiàn)狀及發(fā)展前景,這樣可縮短學(xué)生和計(jì)算機(jī)硬件的距離,激發(fā)他們學(xué)習(xí)的興趣。
2.1.2對(duì)課程中一些原理盡量用生活實(shí)例加以解釋,使理論學(xué)習(xí)深入淺出。在硬件教學(xué)中,可結(jié)合實(shí)際,把一些枯燥的理論性內(nèi)容用形象生動(dòng)的生活實(shí)例來闡明,當(dāng)講到總線時(shí),用教室間的過道加以說明。通過舉例,使同學(xué)們覺得計(jì)算機(jī)硬件并不深?yuàn)W,而是與生活實(shí)際密切聯(lián)系,使他們產(chǎn)生學(xué)習(xí)興趣,并化為一種學(xué)習(xí)動(dòng)力。
2.1.3利用多媒體教室等手段,增強(qiáng)直觀教學(xué)效果,培養(yǎng)學(xué)生學(xué)習(xí)興趣。我們利用可交互式的CAI多媒體教學(xué)軟件及多媒體課件運(yùn)用于課堂教學(xué),可極大減少煩瑣板書的時(shí)間,使學(xué)生將主要精力用于理解、應(yīng)用上,同時(shí)滿足學(xué)生對(duì)新技術(shù)的追求??傊庇^教學(xué)能使許多疑難問題迎刃而解,既可培養(yǎng)學(xué)生興趣,又可增強(qiáng)其學(xué)習(xí)的自信心。
2.1.4交互式教學(xué),提高課堂上學(xué)習(xí)的效率。如果教師把一個(gè)程序從頭到尾、逐字逐句地講給學(xué)生,學(xué)生很容易失去耐心,思想上開小差。此時(shí)我們可以考慮使用演繹法,學(xué)生對(duì)一個(gè)程序已經(jīng)建立起整體概念,細(xì)化的工作讓學(xué)生自己去做。即讓學(xué)生自己去讀程序,教師可以提幾個(gè)相關(guān)的問題.讓學(xué)生在讀的過程中注意思考,學(xué)生帶著問題去理解程序,互相之間可以交流,通過這種方式可大大提高課堂上學(xué)習(xí)的效率。
2.2. 上機(jī)內(nèi)容的教學(xué)改革方法
匯編語(yǔ)言是一門實(shí)踐性很強(qiáng)的課程,它要求學(xué)生掌握調(diào)試程序,以及匯編語(yǔ)言源程序的編輯、匯編、連接和調(diào)試的開發(fā)過程。由于學(xué)生不熟悉Dos操作系統(tǒng)、不習(xí)慣單調(diào)的命令行操作方式,還由于調(diào)試程序(DEBUG.EXE)本身的功能所限和與匯編程序的差異,掌握調(diào)試程序成了實(shí)踐當(dāng)中的一個(gè)難點(diǎn)。學(xué)生應(yīng)盡早學(xué)會(huì)熟練地使用DEBUG。DEBUG是匯編語(yǔ)言的重要調(diào)試工具,它通過單步、設(shè)置斷點(diǎn)等方式為程序員提供了非常有效的調(diào)試手段,也是學(xué)生了解機(jī)器世界的一個(gè)重要窗口。講解時(shí)多采用一些有趣味性、實(shí)用性的例題。例如:在講串操作指令時(shí),可以利用病毒的核心程序例子;其他如猜數(shù)程序,拋硬幣正面朝上概率計(jì)算,時(shí)鐘顯示程序,打字速度測(cè)試程序等。趣味性的程序易引起學(xué)生的注意,增強(qiáng)學(xué)習(xí)的積極性,實(shí)驗(yàn)調(diào)試則更加趣味橫生了。
另外實(shí)驗(yàn)內(nèi)容可以根據(jù)學(xué)生學(xué)習(xí)的情況分為兩類,一類是必做實(shí)驗(yàn),主要包括:DEBUG命令的使用;DEBUG下指令執(zhí)行情況分析;編寫簡(jiǎn)單的算術(shù)運(yùn)算小程序;編寫簡(jiǎn)單的分支、循環(huán)程序,掌握轉(zhuǎn)移指令的用法;子程序設(shè)計(jì);編寫程序通過Dos功能調(diào)用完成I/O操作。另一類主要針對(duì)學(xué)有余力的學(xué)生,安排了選做實(shí)驗(yàn),內(nèi)容主要有:打印所有的“水仙花”數(shù);編寫填充指定屏幕區(qū)域的程序;打字速度測(cè)試程序;編寫用鍵盤選擇計(jì)算機(jī)演奏歌曲的程序;DOS的屏保程序等,作為平時(shí)成績(jī)加分的依據(jù),學(xué)生的積極性就被很好地調(diào)動(dòng)起來了,學(xué)生普遍反應(yīng)良好,主動(dòng)承擔(dān)選做實(shí)驗(yàn)的占全班總?cè)藬?shù)的70%以上。這種激勵(lì)的教學(xué)模式能使學(xué)生由被動(dòng)變主動(dòng)學(xué)習(xí),更能使學(xué)生從“知識(shí)型”向“創(chuàng)造型”轉(zhuǎn)變。
最后我們應(yīng)舍棄一些過時(shí)的應(yīng)用技術(shù),而引入一些實(shí)用的匯編語(yǔ)言程序設(shè)計(jì)方法,例如開發(fā)大型程序需要的模塊化方法、高級(jí)語(yǔ)言的混合編程技術(shù)如C/C++混合編程等。
匯編語(yǔ)言雖然是一門低級(jí)的計(jì)算機(jī)語(yǔ)言,但隨著計(jì)算機(jī)軟、硬件技術(shù)的發(fā)展,匯編語(yǔ)言也不甘落后。另80X86的指令體系還在不斷擴(kuò)展,匯編語(yǔ)言的重要用途仍將值得關(guān)注。對(duì)匯編語(yǔ)言的教學(xué),我認(rèn)為,講授這門課應(yīng)結(jié)合匯編語(yǔ)言的特點(diǎn),進(jìn)行必要的實(shí)踐和理論探索,才能提高教學(xué)效果。
參考文獻(xiàn):
[1] 溫冬蟬等.IBM-PC機(jī)匯編語(yǔ)言程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,1997.
[2] 丁輝等.匯編語(yǔ)言程序設(shè)計(jì)(第2版)[M].北京:電子工業(yè)出版社,2005.
[3] 徐建民.匯編語(yǔ)言程序設(shè)計(jì)[M].北京:電子工業(yè)出版社,2002.
[4] 譚毓安.Windows 匯編語(yǔ)言程序設(shè)計(jì)教程[M].北京:電子工業(yè)出版社,2005.