張力 蔡茂國 錢恭斌
摘 要 文章針對信息工程學(xué)院電子信息工程和通信工程兩個本科專業(yè)的微機原理教學(xué)中存在的問題,探討了對該課程進(jìn)行教學(xué)改革的初步嘗試。首先在內(nèi)容上增加計算機組成與構(gòu)成部分章節(jié)作為課程的導(dǎo)入,一開始就消除學(xué)生對微機的神秘感。另外,對教材內(nèi)容進(jìn)行大膽裁剪,保留8088最核心最基礎(chǔ)的部分,又注入了新鮮的現(xiàn)代計算機的元素。此外,提出了激發(fā)學(xué)習(xí)熱情、注重知識銜接,增加設(shè)計性實驗的教學(xué)方法,以全面提升微機原理的教學(xué)質(zhì)量。
關(guān)鍵詞 微機原理 計算機組成與結(jié)構(gòu) 課程改革
中圖分類號:G424 文獻(xiàn)標(biāo)識碼:A DOI:10.16400/j.cnki.kjdks.2017.10.038
Abstract In view of the problems existing in the teaching of Microcomputer Principles for two undergraduate majors in electronic information engineering and communication engineering of Information Engineering College, this paper probes into the teaching reform of the course. First of all, to increase the content of the computer components and components of the chapter as an introduction to the course, the beginning of the students to eliminate the mystery of the computer. In addition, the content of teaching materials bold cut, retain 8088 of the core, the most basic part, but also injected new elements of modern computers. In addition, the teaching methods of stimulating learning enthusiasm, emphasizing knowledge connection and increasing designing experiment are put forward, so as to improve the teaching quality of microcomputer principle.
Keywords microcomputer principal; computer composition and structure; course reform
微機原理是工科非計算機專業(yè)類的重要專業(yè)基礎(chǔ)課之一,其主要教學(xué)任務(wù)是使學(xué)生從理論和實踐方面掌握微機的基本組成、工作原理、匯編語言程序設(shè)計方法、接口電路及硬件電路的連接,建立微機系統(tǒng)的整體概念。由于該課程的教學(xué)內(nèi)容十分豐富,對于非計算機本科專業(yè)的學(xué)生而言,這門課程實際上包含了微機原理、匯編語言程序設(shè)計和微機接口技術(shù)等計算機專業(yè)技術(shù)基礎(chǔ)課程的內(nèi)容,加上課程概念多、專有名詞多、接口芯片多,內(nèi)容抽象,對于初學(xué)者來說較難,因此長期以來被同學(xué)列為學(xué)習(xí)困難的課程之一,甚至有同學(xué)私下稱之為“危機原理”。針對微機原理目前存在的教師教授辛苦,學(xué)生學(xué)習(xí)效果欠佳的現(xiàn)狀,必要的課程教學(xué)改革迫在眉睫。
總體而言,我們整個微機課程主要圍繞Intel的微處理器8088展開,這款CPU是第一臺IBM PC機使用的中央處理器,必須承認(rèn)該CPU的強大和代表性。雖然只有40個引腳,和目前大量使用的51單片機的引腳數(shù)和封裝相同,但在近40年前8088是劃時代的CPU,因為它支撐了第一代IBM PC機及IBM PC/XT商用機,直到1984年,在IBM PC/AT機上采用了Intel新的80286 CPU,8088才退出了歷史的舞臺。當(dāng)然目前的計算機技術(shù)遠(yuǎn)遠(yuǎn)超越了第一臺商用個人電腦的水平,計算機的內(nèi)核大都采用雙核或多核構(gòu)造,其復(fù)雜度也是數(shù)量級的增加,但任何一個大學(xué)不可能開設(shè)最新計算機硬件的課程,作為授課,8088反而更適合。因為縱觀PC機的發(fā)展,其系統(tǒng)結(jié)構(gòu)的許多方面變化并非一定是全新的,更多的是吸收引進(jìn)了中小型機的特點,如中小型機上采用復(fù)雜的尋址方式、虛擬存儲器、Cache存儲器、各種復(fù)雜的數(shù)據(jù)表示以及中央處理器的流水并行處理技術(shù),都已逐步出現(xiàn)在最新PC機的系統(tǒng)結(jié)構(gòu)中。因此以8088為核心講授微機原理到今天仍然不失很強的基礎(chǔ)性,學(xué)生有了堅實的基礎(chǔ)再自學(xué)感興趣的現(xiàn)代計算機體系結(jié)構(gòu)也不會有困難。
本文主要針對目前所在學(xué)院學(xué)生的學(xué)習(xí)現(xiàn)狀,從課程內(nèi)容和教學(xué)方法兩方面對微機原理課程進(jìn)行了有益的教學(xué)改革嘗試,取得了良好的教學(xué)效果。
1 課程改革的探索與實踐
1.1 課程內(nèi)容的調(diào)整
(1)增加計算機組成與結(jié)構(gòu)的內(nèi)容,消除學(xué)生對課程的神秘感。長期教學(xué)發(fā)現(xiàn),一開始接觸微機原理,學(xué)生對這門課是既好奇又敬畏,好奇是因為覺得自己有機會了解微機的工作原理,敬畏是因為總有微機課難的傳言。針對這種情況,課程組大膽嘗試,增加了計算機組成與結(jié)構(gòu)的內(nèi)容作為微機課程的導(dǎo)入,總共為3個課時。第一個課時概述計算機硬件的五個功能部件,計算機軟件的分類及計算機系統(tǒng)的層次結(jié)構(gòu),并重點交代核心運算器部件的構(gòu)成,所能進(jìn)行的運算和ALU的線路。第二個課時首先以4位運算器Am2901為例,講述該運算器的工作原理,即如何完成3種算術(shù)運算和5種邏輯運算,接著講控制器的功能和基本組成。然后比較微指令和指令的區(qū)別,并給出微程序的概念,以加法指令A(yù)DD為例,分析了ADD指令的執(zhí)行步驟。第三個課時重點剖析TEC-2000微程序控制器的工作原理,仍以ADD指令為例,解釋指令的詳細(xì)執(zhí)行過程。通過加入這三個課時,使學(xué)生一開始就能接觸到CPU內(nèi)部部件,而且主要是用到了先修課程數(shù)字電路設(shè)計的知識,理解起來并沒有太大障礙。了解了微指令的工作過程,就可以消除學(xué)生對微機的神秘感,為進(jìn)行后面的教學(xué)內(nèi)容做好鋪墊,課程設(shè)計遵循從整體到局部,再到總體的主線,脈絡(luò)清晰。而且學(xué)生能夠了解到作為CPU核心的運算器的設(shè)計,為其以后做硬件方面的設(shè)計樹立了自信心。endprint
(2)與時俱進(jìn),對教材內(nèi)容進(jìn)行大膽裁剪和擴展。目前微機原理教材存在的普遍問題是有些內(nèi)容陳舊,比如中斷控制器8259A在中斷章節(jié)占用了很多課時。在8088系統(tǒng)中采用兩片8259A芯片級聯(lián)的工作方式進(jìn)行中斷管理,但是從奔騰3開始PC機的中斷管理采用了I/O高級可編程控制器(I/O APIC)的新組件,與8259A的IRQ引腳不同,中斷優(yōu)先級并不與引腳號相關(guān)聯(lián),中斷重定向表中的每一項都可以被單獨編程以指明中斷向量和優(yōu)先級、目標(biāo)處理器及選擇處理器的方式。重定向表中的信息用于把每個外部IRQ信號轉(zhuǎn)換為一條消息,然后通過APIC總線把消息發(fā)送給一個或多個本地APIC單元。另外,中斷請求的兩種方式靜態(tài)分發(fā)和動態(tài)分發(fā)也不同于8088的機制。鑒于這種變化,課程組在中斷章節(jié)不再詳細(xì)講解8259A的工作原理和方式,而只強調(diào)中斷的概念和CPU對中斷的響應(yīng)機制,并將奔騰處理中斷的思路滲透到課程中,重點讓學(xué)生建立起中斷的概念即可。
類似的設(shè)想是在有限的教學(xué)時間內(nèi)重點突出,減少對過時芯片的講解,增加現(xiàn)代計算機的較新元素,如高速緩存Cache,指令流水線,PCI總線接口,IEEE 1394,USB總線等,使學(xué)生對現(xiàn)代微機的了解更全面。
1.2 授課方法的改進(jìn)提高
(1)激發(fā)學(xué)生的學(xué)習(xí)熱情,調(diào)動學(xué)習(xí)積極性,注重課程的趣味性。對知識的渴求是督促學(xué)生認(rèn)真投入學(xué)習(xí)的最好源動力。針對學(xué)生對微機原理普遍的好奇與敬畏的矛盾心理,從第一堂課上課就注重調(diào)動學(xué)生的興趣,比如說“想不想走進(jìn)我們常用的PC機的內(nèi)部看看它是怎么工作的?”以此勾起學(xué)生的求知欲,接著鼓勵學(xué)生,建立其自信心。課程中注重在每個知識點導(dǎo)入時啟發(fā)學(xué)生自己先思考,并隨機點同學(xué)起來談自己的觀點,順著同學(xué)的觀點繼續(xù)下面的講解,更容易讓學(xué)生接受。這樣學(xué)生也參與到課堂中,其積極性和學(xué)習(xí)熱情會提高,教學(xué)效果自然會好。
同時要注意發(fā)掘課程的趣味性,比如講中斷的時候,往往一開始學(xué)生不好理解,可以舉簡單的例子幫助其理解。例如可以舉例老師正在電腦前寫文章時接到學(xué)院電話談工作的事,接電話就是CPU以前正在進(jìn)行的工作被中斷,處理了中斷請求,掛了電話繼續(xù)寫文章就是CPU中斷返回繼續(xù)以前的工作。講內(nèi)存的時候,可以帶一個舊的內(nèi)存條到教室給同學(xué)看,然后講內(nèi)存的分類,工作方式,內(nèi)存地址的譯碼,和CPU對內(nèi)存的訪問。這樣比直接上課講內(nèi)存給學(xué)生的感覺要生動一些,覺得自己可以看到真實的內(nèi)存,從看到到了解其工作原理更有趣味性。
(2)注重知識銜接,由淺入深地重復(fù)重要知識點。微機原理課程的一個明顯特點是各部分知識點銜接緊密,一環(huán)扣一環(huán),而且記憶的東西較多。比如一開始寄存器要是沒有掌握,接下來的尋址方式就比較困難,尋址方式學(xué)不好,學(xué)指令就很吃力。課程組強調(diào)要注重知識點的銜接,防止學(xué)生學(xué)習(xí)中某一環(huán)掉鏈子而影響到后面的學(xué)習(xí),學(xué)生就會因為聽不懂而慢慢放棄學(xué)習(xí)。筆者課堂教學(xué)采用的方法是不斷由淺入深地重復(fù)重要知識點。開始講寄存器時為了加強學(xué)生的理解及幫助其記憶,每個寄存器都舉了匯編指令的例子,雖然還沒有開始學(xué)指令,像MOV, ADD之類的指令告訴學(xué)生是做什么的還是很容易接受。講7種尋址方式時,不斷復(fù)習(xí)之前學(xué)過的寄存器,強化寄存器的配合使用,如SP和BP是與SS寄存器搭配使用,BX、SI、DI寄存器是和DS寄存器配合使用。之后講指令時又借機不斷練習(xí)指令中操作數(shù)的尋址方式,采用這種不斷重復(fù)的方法,發(fā)現(xiàn)學(xué)生對這些零碎的知識點掌握更輕松,不知不覺就記住了、理解了,這正是我們想要的教學(xué)效果。
(3)實驗環(huán)節(jié)中增加設(shè)計性編程的比例。微機原理課程不僅理論性強,也非常強調(diào)實踐環(huán)節(jié),課程的總學(xué)時為72學(xué)時,其中實驗占18學(xué)時。以前實驗主要為驗證性實驗,基本上給出了實驗流程圖及參考的匯編源代碼,學(xué)生去實驗室只是按實驗手冊step by step敲進(jìn)去代碼驗證實驗結(jié)果。驗證性實驗的優(yōu)點是能保證大部分同學(xué)做出實驗,保守地達(dá)到教學(xué)目的,但缺點是學(xué)生很被動,這樣導(dǎo)致其編程能力難以提高,增加設(shè)計性實驗可以達(dá)到完全不一樣的效果。筆者首先在實驗開始前的一次課堂上公布實驗題目,讓同學(xué)提前去思考,并且為減少障礙,只讓同學(xué)編寫核心代碼部分,匯編的編程框架給出來,甚至一開始可以給點程序讓學(xué)生改寫,這樣調(diào)動了學(xué)生編程的積極性,而且經(jīng)過編程,學(xué)生對指令熟悉了,經(jīng)過調(diào)試等環(huán)節(jié)最終看到程序運行結(jié)果時,能明顯感覺到學(xué)生的成就感,這樣以設(shè)計為導(dǎo)向的實驗使學(xué)生不懼怕編程,從而促使其學(xué)習(xí)進(jìn)入良性循環(huán)。
2 總結(jié)
微機原理屬于信息工程學(xué)院的專業(yè)核心課程,而學(xué)生對該門課有比較嚴(yán)重的畏難心理,制約了課程的教學(xué)效果。針對此現(xiàn)狀,課程組在最近兩年做了課程改革的有益探索,首先增加了計算機組成與結(jié)構(gòu)的部分內(nèi)容作為課程的導(dǎo)入,消除學(xué)生對計算機的神秘感。另外,針對部分教材內(nèi)容陳舊的問題,進(jìn)行大膽裁剪,保留8088最核心最基礎(chǔ)的部分,又給課堂注入了新鮮的現(xiàn)代計算機的元素。除此之外,充分利用課程組平臺,經(jīng)常組織課程組任課老師的內(nèi)部交流會,切磋教學(xué)心得,切實提高和改進(jìn)授課方式,并多讓經(jīng)驗豐富的老師帶動年輕老師,促進(jìn)該課程的教學(xué)上一個新的臺階。從這兩年學(xué)生的反饋看,雖然增加了不少教學(xué)內(nèi)容,學(xué)生更有興趣了,到課率大大提高,期末考試不及格率也大幅下降,表明教學(xué)改革初見成效。我們下一步的工作是強化所取得的成績,充分利用實驗箱,設(shè)計更多學(xué)生可以動手的實驗,讓學(xué)生能近距離觸摸和應(yīng)用硬件芯片,為學(xué)生的硬件理解及設(shè)計能力打下堅實的基礎(chǔ),這樣學(xué)生畢業(yè)才有信心應(yīng)對各種新知識、新技術(shù)的挑戰(zhàn)。
參考文獻(xiàn)
[1] 龔尚福.微機原理與接口技術(shù)(第2版)[M].西安:西安電子科技大學(xué)出版社,2008.
[2] 鐘國輝.以設(shè)計性實驗為牽引的微機原理課程教學(xué)[J].高等工程教育研究,2013(3):154-158.
[3] 王鼎君. 《微機原理與接口技術(shù)》課程教學(xué)改革研究初探[J].福建電腦,2012(10):43-45,42.
[4] 葛桂萍,李云,史庭俊.《微機原理及應(yīng)用》精品課程建設(shè)的探索與研究[J].科技創(chuàng)新導(dǎo)報,2014(30):151-152.
[5] 吳寧.微機原理與接口技術(shù)課程混合教學(xué)模式探索[J].計算機教育,2014(19):17-20.endprint