文章編號:1672-5913(2008)18-0025-02
摘要:本文分析了目前微機接口實驗模式存在的問題和不足;并根據該課程的具體特點,對微機接口虛擬實驗的實現進行了研究;詳細闡述了微機接口虛擬實驗的作用以及虛擬實驗和真實實驗的互補。
關鍵詞:微機接口;虛擬實驗;真實實驗;實驗教學
中圖分類號:G642.423 文獻標識碼:B
1引言
“微機接口技術”是高等院校計算機專業的主要專業基礎課程之一,也是許多理工科專業學生的一門必修課程。通過該課程的學習,學生可以深入了解微型計算機系統組成、工作原理及常規接口技術,掌握針對系統和接口的程序設計,為應用和開發微型計算機技術打下良好的基礎。目前大部分高校的微機接口實驗必須借助于專門硬件實驗設備才可以進行,如圖1所示,這種實驗模式存在以下一些缺點:
(1) 由于受到經費的限制,學校所能提供的實驗設備有限,在目前學生人數日益增多的情況下,很難滿足每個學生擁有一臺設備的要求,學生也不可能隨時到實驗室去熟悉實驗設備,在實驗時學生經常會因對設備不熟悉,對實驗內容準備不充分而收不到滿意的實驗效果,教學質量很難保證。
(2) 實驗設備易損壞、老化,而且由于微型計算機發展迅速,實驗設備更新換代往往跟不上微型計算機發展的速度,導致實驗內容陳舊、不全面。如目前大多數高校該課程的使用教材和授課內容已經是以32位微處理器為背景,講授32位微型計算機原理和接口技術,但配套的32位實驗設備卻鮮見。
(3) 微機接口實驗通常是軟件和硬件相接合,學生平時對計算機硬件的實踐操作機會很少,若涉及較多的接插線和元器件出現錯誤,造成實驗時間過長,學生排查錯誤困難,而且一旦出現差錯易造成器件或設備的損壞和故障,影響了學生學習的主動性和積極性。
(4) 隨著互聯網的發展,基于網絡的遠程教學教育在教育領域中的影響越來越大。由于教學機構與學生在空間上分離,學生無法到學校實驗室做具體的實驗,這成為了制約遠程教育質量的一個重要因素[1-2]。

鑒于以上情況,虛擬實驗已成為當今研究的熱點[3-7]。所謂虛擬實驗是指在計算機系統中采用虛擬現實技術實現的各種虛擬實驗環境,實驗者可以像在真實的環境中一樣完成各種預定的實驗項目,所取得的學習或訓練效果等價于甚至在某些情況下優于在真實環境中所取得的效果。近年來,虛擬實驗得到了快速發展,但大部分集中在物理、化學類等學科,而微機接口等可編程類虛擬實驗由于受技術的限制,發展相對緩慢。本文針對微機接口實驗的具體特點,對微機接口虛擬實驗的實現進行了研究,探討了虛擬實驗的作用以及真實實驗和虛擬實驗的互補關系。
2微機接口虛擬實驗的實現
微機接口實驗涉及到對特定的可編程接口芯片的編程[8],互動性是虛擬實驗中的最大難點。如果僅僅讓學生運行給定的實驗程序和觀察預先設置的實驗結果,而不讓他們自己親自動手編程、調試和執行實驗程序,通過程序運行控制設備工作,察看運行效果來檢驗程序正確性,根本達不到預想的實驗效果,也不能提起學生對接口實驗的興趣。因此實現虛擬可編程實驗必須根據實驗程序執行后產生的指令流,虛擬實驗設備實時動作以仿真真實設備。通過對接口實驗仔細分析,可發現在微機接口實驗中,用戶對外設的控制完全是通過對接口芯片的編程實現的,PC系列機中,CPU對I/O端口的訪問又是通過IN/OUT指令完成的,因此可截獲用戶程序運行中對端口的操作序列(即IN/OUT指令流),然后根據這個端口操作序列讓虛擬實驗設備實時動作,對真實設備的真實運行結果進行模擬仿真。即構造虛擬實驗的關鍵是讓虛擬實驗設備程序實時獲得實驗程序執行后的I/O指令流,即輸入、輸出指令的截獲。
由于Windows 2000/XP操作系統中,普通應用程序對端口是不能直接用IN/OUT指令進行訪問的,也不能使用STI,CLI中斷允許和禁止指令[9],因此目前各高校微機接口實驗程序的編程格式基本上仍是DOS格式,程序運行在Windows的虛擬86,即DOS虛擬機(VDM)環境中。虛擬86模式是保護模式下的一種特殊工作模式,實模式DOS程序可以不經任何修改地運行在此模式中,但DOS程序中任何對硬件訪問的特權操作都會被系統截獲。Windows 2000/XP操作系統提供的基于VDM的截獲[1o],不需要對DOS實驗程序做任何修改。VDM會將截獲的DOS實驗程序中對端口的I/O操作,路由到虛擬設備驅動程序(VDD),VDD再根據每種具體的操作來進行轉發,可以直接訪問硬件設備;也可以脫離實際的硬件,轉發給虛擬實驗設備程序,虛擬實驗設備會根據用戶的指令實時反饋,對真實設備的真實運行結果進行模擬仿真,例如發出聲音、屏幕的顯示發生變化等。虛擬實驗系統模型圖所圖2所示。

根據微機接口實驗的特點,接口實驗虛擬化應采用虛實接合的設計思想,以最大限度地仿真真實的實驗環境。“實”即原有的實驗程序和開發工具、開發環境保持不變,不需要做任何改動。學生不需要重新熟悉專門的編程語言、新的開發環境,一切開發過程和真實環境中的相同。“虛”即將微機接口實驗需要的專門實驗設備虛擬化,以“軟”代“硬”,編寫程序對硬件實驗設備的實驗結果進行仿真,以此來構建一個虛擬實驗設備。虛擬實驗設備包含8254、8255、8250等虛擬接口芯片以及數碼管、開關、發光二級管等虛擬外設。
3虛擬實驗的作用
虛擬實驗用純軟件的方法實現以“軟”代“硬”,不僅比較有效地解決目前微機接口實驗存在的一些問題和不足,在一些地方甚至優于真實的硬件實驗,如不占用系統硬件資源,共享度高、成本低,可以不斷增加新的實驗內容等。虛擬實驗的作用主要體現在以下幾個方面:
(1) 課堂教學
“微機接口技術”是一門軟、硬件相接合的課程。對于絕大多數學生來講,課程中的很多知識都是抽象而難于理解的,普通的多媒體課件無法反映計算機程序執行的動態效果,硬件實驗結果與其工作原理都難以用這類課件反映出來,從而達不到理想的教學效果,學生會覺得生澀難懂。虛擬實驗可以將實驗搬進教室,結合理論課在講臺上演示,從而解決理論教學和實驗教學各自獨立、相互分離的問題。學生可以很直觀地看到動態的執行過程,明確了執行過程中相關硬件的工作情況,調動了學習積極性。例如圖3是一個數碼管8字左移程序運行時的顯示狀態。用戶可以通過改變程序中的段選碼和位選碼,動態地改變數碼管的顯示。學生通過這一虛擬實驗,不僅明白了和接口相關的基本概念,數碼管的工作原理,而且深入理解了微機系統與外設采用無條件數據傳送的基本原理,實踐證明可達到了理想的教學效果,極大地提高了教學效率。

(2) 實驗預習及指導
學生首先可通過虛擬實驗,深入了解實驗的原理、過程、結果。微機接口實驗通常是軟件和硬件相接合,硬件的虛擬化排除了實驗中硬件故障的影響,學生可通過虛擬實驗,方便地檢查出程序的錯誤,編寫出正確的實驗程序,避免真實實驗時間過長,排查錯誤困難的情況發生。
(2) 課后復習
學生在課后復習過程中,還會遇到很多關系到實驗方面的內容,利用虛擬實驗提供的虛擬環境,學生能夠和做真實實驗一樣進行操作并得出實驗結果。
(3) 設計性和綜合性實驗的開設
設計性和綜合性實驗是培養學生綜合素質的有效途徑,虛擬實驗可提供大量的設計性和綜合性的實驗課題,課題的內容和深度可根據學生本人的興趣與能力來選擇。這些實驗可以開拓學生視野,激發學生實驗的興趣,有助于學生創新能力的培養。
(4) 遠程教育
在遠程教育中,無法開展真實實驗。虛擬實驗的出現無疑為遠程教育的實驗問題提供了解決的方法。將做好的虛擬實驗發布到學校的網站上,學生可以方便地下載虛擬實驗軟件,或將虛擬實驗系統和網絡系統緊密結合起來,建成WEB 虛擬實驗室,則可以在相當程度上加強遠程教育的實驗環節,達到學習的目的。
(5) 更新教學觀念
虛擬實驗可以不受地點和時間的限制,學生可以根據教學進度和自身實際情況,自主選擇實驗內容,還可以多次重復實驗,處于實驗教學的主導地位,掌握了學習的主動權,激發了學習的興趣。教師與學生、學生與學生之間可以平等地通過“協商”進行學習。
4結束語
微機接口虛擬實驗與真實實驗相比有其獨特的優勢,在實驗教學中正發揮著越來越大的作用,它可使我們豐富實驗教學內容,改進實驗教學手段和方法。但虛擬實驗與真實實驗存在著本質的差別,是不可能完全替代實物實驗的。一些在真實實驗中出現的問題,在虛擬實驗中并不出現。真實實驗是虛擬實驗的基礎,實驗結果是不可預測的。虛擬實驗是對真實實驗的模擬,在模擬過程中丟失了許多真實事件的信息,實驗過程中不完全的信息不利于對學生嚴謹求實的科學態度的培養,影響學生對微小變化和非正常信息的感受,不利于學生創新能力、動手能力和發現、解決問題能力的培養。因此在教學中,應發揮真實實驗和虛擬實驗各自的特點,將虛擬實驗與真實實驗有機地結合起來,兩者互為補充,相輔相成。實踐證明,將計算機虛擬實驗與傳統的真實實驗相結合的實驗方法是有效提高實驗教學質量、效率及效果的好方法。
參 考 文 獻
[1] 江詩林,吳泉源. 開展虛擬實驗系統的研究和應用[J]. 計算機工程與科學,2002,(22):34-35.
[2] 李健蘋. 遠程教育實驗教學的實施[J]. 重慶廣播電視大學學報,2002,(1):11-13.
[3] 詹碧卿,超文,建生等. 現代遠程教育教學模式探討[J]. 中國遠程教育,2002,(2):43-47.
[4] 陳傳波,朱偉,劉樂善. 一個可編程虛擬實驗平臺的研究[J]. 計算機工程科學,2004,(7):77-78.
[5] 孫力娟等. 微型計算機原理與接口技術[M]. 北京:清華大學出版社,2007.
[6] 坎特. Windows WDM設備驅動程序開發指南[M]. 北京:機械工業出版社,2007.