蘭 勇,張朝陽,王 偉,張少博
(長安大學 信息工程學院,陜西 西安 710064)
計算機組成原理是計算機科學與技術(shù)專業(yè)的核心基礎(chǔ)課程,對后續(xù)專業(yè)課程的學習起著至關(guān)重要的奠基作用,同時也是一門公認的難學難教的課程。一方面,涉及繁雜嚴密的邏輯過程的計算機組成原理課程,其知識點大都比較抽象、枯燥,學習難度較大;另一方面,學生從公共基礎(chǔ)課過渡到專業(yè)課的學習,本身需要一個適應(yīng)轉(zhuǎn)變的過程[1],而計算機組成原理又是學生最先接觸到的專業(yè)課程,進一步增加學生的學習難度。因此,教授好本課程,為本專業(yè)的學生打下堅實的專業(yè)理論基礎(chǔ),成為計算機組成原理課程教師不斷改進和創(chuàng)新教學方法的原動力。
計算機組成原理難學難教的原因之一,就是知識點多且難。主流的計算機組成原理教材內(nèi)容雖然涵蓋比較全面的專業(yè)知識,但是紙質(zhì)介質(zhì)的教材本身可表達的信息量十分有限,對專業(yè)知識的表述不能面面俱到,有時甚至缺乏深度,因此授課教師雖然要基于教材講授,但是卻不應(yīng)受限或迷信于教材,更不能照本宣科,進行填鴨式的教學,要在教材有限知識點的基礎(chǔ)上,不斷拓展知識點的寬度和深度。另外,雖然擔任計算機組成原理課程教學的任課教師,不一定必須是科班出身,但是必須要重視教授課程應(yīng)具備的專業(yè)水準。計算機科學的專業(yè)知識是一個系統(tǒng)性很強的知識體系,教師應(yīng)該在教學過程中不斷凝練知識點,做到對專業(yè)知識的融會貫通。
數(shù)字邏輯是計算機組成原理重要的先修課程,運算方法和運算器是計算機組成原理的重要知識點之一,然而,即使是現(xiàn)在比較主流的教材,在此章節(jié)中也未清晰地闡明計算機組成原理課程中運算方法和運算器知識點同數(shù)字電路課程中加法器知識點的關(guān)系,讓學生在學習此知識點的過程中產(chǎn)生疑惑,為此,教師在教學過程中需改進教學內(nèi)容。教師要在課程開始時向?qū)W生闡明二者之間的承接關(guān)系,即數(shù)字電路課程中的加法器是一種不考慮符號的、基于純粹的二進制編碼實現(xiàn)的加法器,但人們面對的運算是有正負符號的,也就是真值的運算。如果將真值的正負符號也轉(zhuǎn)化為二進制編碼表示,就會產(chǎn)生機器碼,機器碼本身也是一種純粹的二進制編碼,于是就可以充分利用數(shù)字電路課程中的加法器進一步實現(xiàn)真值的加法,不過需要在完成基于機器碼的機器加法后,再將機器碼轉(zhuǎn)換為具有正負符號的真值。
針對Cache存儲器、虛擬存儲器等知識點,現(xiàn)有的教材幾乎都未提及這些知識點與操作系統(tǒng)課程的關(guān)系,但在后續(xù)的專業(yè)學習中,學生會發(fā)現(xiàn)操作系統(tǒng)課程中存儲器管理知識點與本知識點具有高度的重復性,會再次產(chǎn)生疑惑。授課教師在此知識點的講授上,應(yīng)該清楚地告訴學生本課程所講述的存儲體系知識點與操作系統(tǒng)課程的關(guān)聯(lián),闡明構(gòu)建計算機存儲系統(tǒng)的原理和機制。操作系統(tǒng)是一種管理計算機軟硬件資源的系統(tǒng)軟件;操作系統(tǒng)對存儲系統(tǒng)資源的管理策略正是依賴于此處所講述的存儲系統(tǒng)原理和機制,并以此進行系統(tǒng)軟件實現(xiàn)的。由此,既能強調(diào)此知識點對后續(xù)專業(yè)課程學習的重要性,引導學生認識到學好此知識點具有事半功倍的效果,又能消除學生在后續(xù)操作系統(tǒng)課程學習中的疑惑。
此外,本課程的諸多知識點與計算機系統(tǒng)結(jié)構(gòu)、微型計算機原理與接口技術(shù)等專業(yè)課程的承接關(guān)系(如圖1所示),都應(yīng)盡可能闡明。當然,這需要任課教師自身具備全面、系統(tǒng)、深入的專業(yè)知識。所謂“名師出高徒”“強將手下無弱兵”,教師本身也要不斷提升自身專業(yè)水平和專業(yè)素養(yǎng),做到術(shù)有專攻,業(yè)有所長,才能更好地授業(yè)解惑[2]。
圖1 計算機科學與技術(shù)專業(yè)課程體系中的課程承接關(guān)系
通常,計算機組成原理課程的概論里會指出:計算機組成是對計算機系統(tǒng)結(jié)構(gòu)的邏輯實現(xiàn)。然而,這個概念對于剛剛接觸專業(yè)課程學習的學生來說,實在太過抽象,這也是本課程難學的原因所在。邏輯概念的建立與運用,是計算機專業(yè)學生分析和解決計算機專業(yè)領(lǐng)域知識問題的一個重要手段。為此,教師應(yīng)在整個課程教學中結(jié)合相應(yīng)的知識點,闡明相應(yīng)的知識理論是基于邏輯的描述,還是物理的概念,如針對計算機系統(tǒng)層次結(jié)構(gòu)的知識點[3],應(yīng)該及時闡明并強調(diào)計算機系統(tǒng)分層原理的“自上而下”是基于邏輯上的描述,而非物理的“上下”,而且正是這種邏輯上的分層,可以使繁雜的計算機技術(shù)逐層逐級地各個解決。針對計算機組成部件的劃分與相互關(guān)系、運算方法的機器運算過程描述、指令周期的劃分等諸多知識點的講授,都應(yīng)注重強調(diào)邏輯實現(xiàn)及其與物理實現(xiàn)的區(qū)別,讓學生深刻理解什么是邏輯實現(xiàn),使學生及早掌握基于邏輯的分析方法和具備解決計算機專業(yè)領(lǐng)域問題的能力。
通過長期的計算機組成原理課程講授以及對專業(yè)知識的領(lǐng)悟,筆者進一步將計算機的基本工作原理提煉為“從微觀到宏觀,從量變到質(zhì)變”的過程。計算機運行的微觀過程注重解決好基于時間、空間的邏輯實現(xiàn)細節(jié),在此基礎(chǔ)上,以時序為基準,基于高速的時鐘頻率重復這些實現(xiàn)了的微觀過程;宏觀上展現(xiàn)出的就是質(zhì)變的、具有高速計算能力的機器,甚至是智能的機器。這種“微觀到宏觀,量變到質(zhì)變”的原理,與日光燈、動畫、電影等的工作原理如出一轍,以此引導學生,能讓學生更通俗、更淺顯地理解計算機組成原理的知識重點和難點?!皬奈⒂^到宏觀,從量變到質(zhì)變”的科學原理,首先適用于計算機組成原理課程諸多知識點的講授,尤其是講授中央處理器章節(jié)中的指令周期、微程序控制器原理等知識點時,能使抽象繁雜的邏輯過程變得深入淺出;其次能強化學生在解決計算機專業(yè)領(lǐng)域問題時,應(yīng)當首先著眼于解決好微觀的邏輯過程實現(xiàn)。
課程設(shè)計是計算機組成原理課程十分重要的實踐教學環(huán)節(jié)。與理論教學中的幾個驗證性實驗不同,課程設(shè)計的教學需要教師全力引導學生從設(shè)計的角度實現(xiàn)對理論知識的深入認識和實踐應(yīng)用。以基于傳統(tǒng)實驗箱的簡單或復雜模型機設(shè)計的課程設(shè)計為例,教師應(yīng)當按照硬件、指令系統(tǒng)、測試程序的至上而下層次結(jié)構(gòu),引導學生從無到有、逐層逐級地完成模型機設(shè)計,尤其在硬件設(shè)計環(huán)節(jié),教師應(yīng)該注意糾正學生“已有實驗箱,無需硬件設(shè)計”的錯誤觀念。教師要注重引導學生:實驗箱僅提供必備的硬件模塊,如運算器模塊等,但實驗箱之間的邏輯實現(xiàn),需要學生進一步設(shè)計完成,同時需要通過模塊連線完成硬件的物理實現(xiàn),在完成模型機硬件設(shè)計的基礎(chǔ)上,機器指令系統(tǒng)、微指令格式設(shè)計及編碼、微指令在控存中的微地址安排等,均應(yīng)按照從無到有、逐級實現(xiàn)的過程設(shè)計完成。課程設(shè)計報告的撰寫和成績評定,更要體現(xiàn)出設(shè)計思想,而非實驗報告,一定要避免讓學生將課程設(shè)計當成再一次的驗證性大實驗完成了結(jié),否則就完全背離課程設(shè)計教學的根本目的。
計算機組成原理難學難教是因為計算機的工作原理涉及大量的、繁雜的、嚴密的邏輯過程。邏輯過程是與時間和空間密切相關(guān)的,而靜態(tài)的書面文字和圖片又難以深入淺出地描述抽象繁雜的邏輯過程。現(xiàn)代的教學課堂大多配備多媒體教學設(shè)備,教師應(yīng)充分利用PPT等工具,將抽象難理解的邏輯過程用形象的動畫表現(xiàn)出來,這就要求教師不僅能熟練地運用PPT等各種多媒體表現(xiàn)功能,而且要對教學內(nèi)容的多媒體表現(xiàn)形式進行合理巧妙的構(gòu)思,讓抽象的工作原理和邏輯過程展現(xiàn)得恰到好處、一目了然,極大地提高學生學習的興趣,讓教學內(nèi)容變得深入淺出。以對微程序控制器工作原理知識點的講授為例,教師可以將時間軸(時序)、微指令周期、指令周期以及微程序控制器原理框圖結(jié)合起來設(shè)計成一頁PPT,通過動畫形式,如采用箭頭圖形在時間軸上前進的形式指示微指令周期的改變并觸發(fā)相應(yīng)的微指令執(zhí)行過程,直觀地表現(xiàn)基于時序的計算機指令執(zhí)行和控制的過程,既強化學生對計算機時序的理解,又讓抽象的微程序控制器原理變得通俗易懂。
計算機組成原理作為計算機專業(yè)的核心基礎(chǔ)課程,通常學時數(shù)多、課程量大,若只依賴有限的課堂教學時間,學生對知識的理解與掌握必定是十分有限的?,F(xiàn)代教學應(yīng)當充分利用無處不在的互聯(lián)網(wǎng)絡(luò),為學生開發(fā)和提供基于網(wǎng)絡(luò)的線上學習資源,圖2所示為基于線上線下融合的翻轉(zhuǎn)課堂教學模式示意圖。在教學過程中,針對課程的知識重點和難點,我們分別錄制定點加法運算、定點乘除法運算、Cache的地址映像與變換、微程序控制器工作原理、微程序設(shè)計舉例等微課視頻并分享到學生QQ群、微信等線上平臺,供學生課前預(yù)習或課后復習。其中,定點加法運算微課視頻獲得陜西省第二屆高校教師微課教學比賽二等獎,并同時在全國高校微課教學比賽網(wǎng)站上線。
圖2 基于線上線下融合的翻轉(zhuǎn)課堂教學模式示意圖
在具備豐富線上學習資源的基礎(chǔ)上,適時適當?shù)剡M行基于翻轉(zhuǎn)課堂的教學模式[4]改進,可以更好地調(diào)動學生的學習積極性,提高學習效果,如針對指令系統(tǒng)尋址方式知識點的教學,可以安排學生提前進行線上學習,并在線下(課堂)教學中將學生分組,各組指定代表上臺講解,并引發(fā)討論,教師參與討論并指導學生進一步理解和掌握該知識點。課程設(shè)計教學過程更適合翻轉(zhuǎn)課堂教學模式,在將學生分組的基礎(chǔ)上,按照模型機設(shè)計的流程,每完成一個設(shè)計環(huán)節(jié)后,都安排一次小型的翻轉(zhuǎn)課堂,由各組對階段設(shè)計的完成情況和下一步的設(shè)計思路進行講解并引發(fā)討論。在課程設(shè)計的答辯環(huán)節(jié),改變過去由指導教師到各小組進行問答的評分模式,改為給定每組20 min,由各組預(yù)先制作簡短的PPT,全體組員上臺協(xié)作講解、演示和答辯并評分的模式;同時,對各組答辯的過程進行全程錄屏錄像,并將錄制的視頻返給學生,以此進一步增強成績評定的客觀公正性,充分激發(fā)學生的學習興趣,培養(yǎng)團隊協(xié)作精神,更好地達到課程設(shè)計的教學目的。
計算機組成原理課程雖然具有難學難教的特點,但是其教學效果和教學質(zhì)量的好壞,本質(zhì)上還是取決于教學內(nèi)容的凝練與教學方法的科學合理。通過不斷改進教學內(nèi)容,凝練關(guān)鍵知識點,并基于線上線下的翻轉(zhuǎn)課堂創(chuàng)新傳統(tǒng)教學模式和教學方法,能夠使枯燥乏味的計算機組成原理課程學習充滿樂趣,激發(fā)學生的學習動力。教學改革在屢次的教學檢查和教學評估中獲得了學生的高度好評和一致認可,收到良好的教學效果,為學生后續(xù)專業(yè)課程的學習奠定了堅實的專業(yè)理論基礎(chǔ)。