摘 要:《微機原理及應用》課程理論性及實踐性強、概念抽象、知識點多,學生學習難度大。通過多年的教學研究與實踐,在教學目的、理論教學和教學方法上提出了一些自己的見解和經(jīng)驗。實踐證明能調(diào)動學生的學習積極性,改善教學效果。
關(guān)鍵詞:微機原理及應用;教學研究;實踐
中圖分類號:TP301-4
《微機原理及應用》課程是高校電氣、自動化、電子、機械、計算機等專業(yè)開設(shè)的專業(yè)基礎(chǔ)課,是學習和掌握微機組成、工作原理、接口技術(shù)及匯編語言程序設(shè)計的重要課程,學生通過該課程的學習能夠具備微型計算機系統(tǒng)軟硬件開發(fā)和應用的基本能力[1,2],學習的好壞直接影響到后續(xù)課程的學習效果。本課程知識點多、概念抽象、實踐性強,對于缺乏計算機硬件基礎(chǔ)知識的同學來說,入門較難,概念的理解、原理的認識尤其困難。大多數(shù)學生反映學起來吃力,難以理解和掌握,更不用說應用了。通過多年的教學研究和實踐,筆者積累了一定的經(jīng)驗供同行參考,以期達到提高教學效果的目的。
1 明確課程的地位和目標
《微機原理及應用》在我學院電類專業(yè)的第五學期開設(shè)。在學習這門課程之前,學生學習了《計算機基礎(chǔ)》、《C語言程序設(shè)計》、和《數(shù)字電子技術(shù)基礎(chǔ)》等相關(guān)的基礎(chǔ)課程。本門課是在這些課程的基礎(chǔ)上介紹微機各組成部分的工作原理和接口技術(shù),既有硬件知識,又有軟件知識,在專業(yè)培養(yǎng)中起著承前啟后的作用,是后續(xù)的《單片機原理及應用》、《嵌入式系統(tǒng)》、《計算機控制》等課程的重要基礎(chǔ)。
本門課程的教學目標就是讓學生認識到如何將CPU、存儲器芯片、接口芯片等組成一個硬件系統(tǒng),以及怎樣編程讓這些芯片協(xié)同工作去解決實際問題。
2 理論教學的研究與實踐
學生之前只學過《C語言程序設(shè)計》(該門課所學內(nèi)容跟硬件幾乎沒有關(guān)系)和《數(shù)字電子技術(shù)基礎(chǔ)》(該門課所學內(nèi)容牽涉不到程序設(shè)計),所以從學生的角度來看《微機原理及應用》這門“軟硬兼施”的課程確實是比較難學。如果課堂教學不能將抽象的內(nèi)容變得易于理解,教學效果就很難得到保證。因此,教師一定要換位思考,因材施教,不斷提高自己的教學水平,提高學生的學習興趣和學習積極性。
2.1 硬件方面的教學研究
在介紹8086引腳的時候,可以結(jié)合8086最小模式系統(tǒng)進行敘述,目的是讓學生知道8086的引腳和外圍的地址鎖存器、數(shù)據(jù)收發(fā)器、存儲器(或I/O接口)之間是如何連接的,一方面讓學生掌握引腳信號的傳輸方向,一方面是讓學生建立系統(tǒng)的概念和了解系統(tǒng)的組成。
8086的有些引腳是“孤軍奮戰(zhàn)”(單獨起作用),比如說復位信號RESET。有些引腳是協(xié)同作戰(zhàn),比如說、和,把相關(guān)的引腳放在一起介紹可以幫助學生掌握這一組引腳如何共同實現(xiàn)作用。
在授課過程中,教師不必拘泥于教材章節(jié)的順序,可根據(jù)教學需要進行調(diào)整。8086的有些引腳可以不在8086微處理器這一章進行介紹。比如說放在存儲器擴展時進行介紹;HOLD和HLDA放在輸入輸出里面去介紹;INTR、NMI、放在中斷里面去介紹。這樣就做到了學以致用,學生更容易理解8086這些引腳的含義和作用。
2.2 軟件方面的教學研究
8086指令系統(tǒng)中包含2萬多條指令,其中有133條基本指令。面對如此之多的指令,怎么樣才能讓學生在較短的時間內(nèi)掌握呢?通過多年的教學研究,總結(jié)出以下幾點供參考,希望起到拋磚引玉的作用。
有些指令里面的操作數(shù)是隱含的,比如說MUL乘法指令里面只提供了一個乘數(shù),而另外一個乘數(shù)由誰來提供?乘積保存到哪里去?這些都是隱含的。如果進行的是字節(jié)乘法,另外一個8位的乘數(shù)默認由AL寄存器提供;如果進行的是字乘法,另外一個16位的乘數(shù)默認由AX寄存器提供。如果是進行的字節(jié)乘法,則乘積不超過16位,默認為AX保存乘積;如果是進行的字乘法,則乘積不超過32位,默認為DX和AX共同保存乘積。由上面的敘述可知,隱含的8位寄存器是AL,隱含的16位寄存器是AX,隱含的32位是DX和AX。類似的指令還有除法指令DIV、CBW、CWD等等。如果學生掌握了這些“潛規(guī)則”,則對指令的掌握會有很大的幫助,進而會提高閱讀分析程序和編寫程序的水平。
在介紹移位指令、循環(huán)移位指令、循環(huán)轉(zhuǎn)移類指令時,因為這些指令都會牽涉到移位(或循環(huán))次數(shù)的問題,可以學生記住Counter(計數(shù)器)這個單詞,在移位指令和循環(huán)移位指令中,由于移位次數(shù)比較少,所以在指令中用CL這個8位寄存器來提供移位次數(shù);而在循環(huán)轉(zhuǎn)移等指令中,由于循環(huán)次數(shù)比較多,所以用CX這個16位寄存器來提供循環(huán)次數(shù)。
教師在教學過程中不斷總結(jié)經(jīng)驗,潛心研究,一定能找出很多上述的規(guī)律,這樣對教學可以起到事半功倍的效果,學生也更容易接受。
2.3 “軟硬兼施”方面的教學研究
在介紹指令時,應該告訴學生某些指令的執(zhí)行會引起CPU哪些引腳產(chǎn)生什么樣的變化。比如說指令MOV AX,[1000]實現(xiàn)的是將存儲器單元的數(shù)據(jù)傳送到CPU內(nèi)部的AX寄存器,說明訪問的是存儲器,屬于讀操作,因此該指令在執(zhí)行時,8086的引腳輸出高電平(訪問存儲器),輸出低電平(讀入操作),輸出高電平(在進行讀入操作時,寫信號是無效的)。
同樣的,IN/OUT指令也會引起CPU的、和引腳信號的變化,從而實現(xiàn)對接口芯片的輸入/輸出。
在掌握了指令的執(zhí)行對引腳信號的變化這些知識以后,最終要讓學生達到編程控制接口芯片的目的。比如在一個數(shù)據(jù)采集系統(tǒng)中,如何編程讓ADC0809的START信號有效從而啟動A/D轉(zhuǎn)換;如何編程去查詢ADC0809的轉(zhuǎn)換是否已經(jīng)結(jié)束;如何編程讓OE信號有效使得ADC0809輸出轉(zhuǎn)換以后的數(shù)據(jù)。
采用這種方式教學,一方面可以鞏固學生前面所學到的知識,另外一方面可以幫助學生建立“指令運行硬件系統(tǒng)”的概念,同時也可以提高學生調(diào)試微機應用系統(tǒng)的能力。
2.4 比喻法在教學中的應用研究
本課程的內(nèi)容嚴謹,容易造成課堂氣氛沉悶,讓學生覺得該課枯燥乏味,失去學習興趣[3]。實際上,微機系統(tǒng)各部件間的工作過程類似于人與人的交流過程,因此教師在授課過程中,要善于把抽象的概念用現(xiàn)實生活里面的人類行為聯(lián)系起來,這樣有助于學生的聯(lián)想、理解和記憶,提高學生的學習興趣和學習積極性。
(1)指令隊列緩沖器
在講解指令隊列緩沖器時可以食堂打飯為例來介紹。假設(shè)食堂的打飯窗口只允許排最多6人的隊伍(相當于指令隊列緩沖器),其余人員(相當于指令)只能在食堂外(相當于存儲器)等待。食堂工作人員(相當于執(zhí)行部件EU)每給一人打飯(相當于執(zhí)行指令)結(jié)束以后,隊伍里原來排在第二位的就自動向前移動成為第一位,依此類推(讓學生理解指令隊列緩沖器的FIFO,先進先出),當隊伍只剩下4個人時(也就是隊伍空余2個位子),在食堂外等待的人才能依次進來(相當于取指令)。食堂工作人員給人打飯是需要時間的(相當于執(zhí)行指令),食堂外等待的人進來加入隊伍也是需要時間的(相當于取指令)。正是由于指令隊列緩沖器的存在,實現(xiàn)了執(zhí)行指令和取指令的并行工作,有效地提高了CPU的工作速度。
(2)段地址和偏移量
在講解段地址和偏移量時可以教學樓為例來介紹。我們的教學樓編號是以S表示南樓、N表示北樓、E表示東樓、W表示西樓,每幢樓有五層,每層有教室若干。如果上課的教室門牌號碼是S218,則表示是南樓的218教室。整個教學樓相當于存儲器,每幢樓可以理解為存儲器的一個段,每個教室相當于一個存儲單元,教室里面的人相當于存儲單元的內(nèi)容。如果只知道該教室在S樓(可以理解為段地址),或者只知道該教室是218(可以理解為偏移量),都是不能找到該教室的。所以要找某一個教室必須要有一個完整的地址(也就是要訪問存儲器的某個存儲單元,必須要明確段地址和偏移量,也就是物理地址)。當然,如果已經(jīng)知道了教室在S樓,那就只需要知道教室門牌的后3位數(shù)字即可(也就是如果知道了某個存儲單元所在的段地址,那就僅需要偏移量就能找到該存儲單元)。
(3)堆棧
在介紹堆棧時,我會拿我經(jīng)常含服的潤喉片(塑料瓶裝)為例來講解入棧和出棧的過程。在藥廠生產(chǎn)的時候,瓶底相當于棧底,每裝入一片潤喉片,頂部就上移。等客戶買回潤喉片含服時,每取出一片潤喉片,頂部就下移??蛻羧〕龅牡谝黄撬帍S最后裝入的(LIFO,后進先出),客戶取出的最后一片是藥廠最先裝入的(FILO,先進后出)。同時讓學生理解入棧和出棧時,棧頂?shù)奈恢檬遣粩嘣诟淖兊摹?/p>
(4)中斷
中斷一般是指由于隨機事件的發(fā)生,CPU暫停執(zhí)行現(xiàn)行程序,轉(zhuǎn)而處理隨機事件,處理完畢再返回到被打斷的地方繼續(xù)執(zhí)行。學生在學習時往往不太明白中斷的完整過程是什么,這時就可以用實際生活的例子來解釋。在講解中斷概念時可以家長找學生為例來介紹。教師(相當于CPU)正在上課(相當于執(zhí)行程序)時,有家長(中斷源)在教室門口向教師示意要找人(相當于中斷請求),這時可能出現(xiàn)兩種情況:一種是教師不愿意停止講課(相當于中斷允許標志位IF=0),家長就無法找到學生;另一種可能是教師愿意停止講課(相當于中斷允許標志位IF=1),讓相應學生離開教室(相當于中斷服務)后,教師繼續(xù)從剛才被打斷的地方繼續(xù)講課。
3 結(jié)束語
在教學過程中,教師的教學水平很大程度上影響了學生的學習興趣和學習結(jié)果。經(jīng)過多年的教學研究與實踐,本文針對《微機原理及應用》課程在教學中存在的問題,分別從課程的地位和教學目標、理論教學、教學方法等方面提出了一些自己的見解和實踐經(jīng)驗,目的是調(diào)動學生的學習積極性,改善教學效果,減少學生對《微機原理及應用》課程的畏難情緒,激發(fā)學生對計算機相關(guān)軟硬件知識的學習興趣,充分調(diào)動學生的主觀能動性,為培養(yǎng)學生軟硬件綜合設(shè)計能力創(chuàng)造良好的教學平臺,為把學生培養(yǎng)成為“卓越工程師”打下堅實的基礎(chǔ)。實踐證明,這些嘗試和探索在學生學習興趣培養(yǎng)、抽象知識理解等方面取得了良好效果。
參考文獻:
[1]薛明.“微機原理與接口技術(shù)”課程教學改革淺談[J].中國電力教育,2013,8(267):39-40.
[2]王先春,郭杰榮.微機類課程教學改革研究及實踐[J].中國電力教育,2009,7(141):81-82.
[3]陳得寶,楊一軍,李崢.比喻法在《微機原理及應用》教學中的應用[J].淮北師范大學學報(自然科學版),2013,3(34):87-90.
作者簡介:于海東(1966-),男,江蘇海安人,副教授,碩士,研究方向:微機應用及EDA;李彬,副教授。
作者單位:揚州大學水利與能源動力工程學院,江蘇揚州 225127
基金項目:揚州大學2010年教學改革課題基金資助項目。