

摘 要:微機(jī)原理與匯編語言是電子信息、通信技術(shù)和計(jì)算機(jī)專業(yè)學(xué)生的專業(yè)基礎(chǔ)課。文章針對目前該課程教學(xué)現(xiàn)狀和存在的問題,提出改變傳統(tǒng)教學(xué)方法、采用可視化的教學(xué)模式、降低教師教學(xué)難度、提高學(xué)生的興趣等教學(xué)手段,使學(xué)習(xí)過程變得輕松,實(shí)現(xiàn)寓教于樂的目的。
關(guān)鍵詞:微機(jī)原理;匯編語言;可視化教學(xué)
微機(jī)原理與匯編語言課程是計(jì)算機(jī)專業(yè)的主干核心課程,也是一門綜合性、實(shí)踐性極強(qiáng)的課程[1]。但由于匯編語言是面向機(jī)器的語言,是機(jī)器語言的符號(hào)化,語句不直觀、結(jié)構(gòu)化程度低,程序調(diào)試?yán)щy,與高級(jí)語言的教學(xué)相比難以講解,所以學(xué)生在學(xué)習(xí)過程中普遍感到難度較大[2]。如何從事該門課的教學(xué),使學(xué)生通過學(xué)習(xí),深入掌握微機(jī)原理和基本知識(shí),利用匯編語言編程,培養(yǎng)解決實(shí)際問題的能力,對于教師授課來講有一定難度。如何更好地將該門課程知識(shí)傳授給學(xué)生是每位教師都在探索的問題。結(jié)合自己近幾年的教學(xué)實(shí)踐,為激發(fā)學(xué)生的學(xué)習(xí)熱情,提高匯編語言的教學(xué)質(zhì)量,降低學(xué)習(xí)門檻,我們提出幾點(diǎn)可視化的教學(xué)的手段,該教學(xué)方法在教學(xué)過程中效果良好。
1 微機(jī)原理知識(shí)的可視化動(dòng)態(tài)演示
匯編語言是微機(jī)原理課程的一門工具性語言,課程中有很多交叉結(jié)合的知識(shí)點(diǎn)[3]。如果在微機(jī)原理部分沒有弄明白內(nèi)部結(jié)構(gòu)和工作原理,大量的指令就無法正確運(yùn)用,熟練靈活運(yùn)用匯編程序編程就更難。微機(jī)原理部分概念和專有名詞多、工作單元不易建模,內(nèi)容抽象,學(xué)生不易理解和接受。目前的教學(xué)通常采用比較傳統(tǒng)的教學(xué)方法,教師是在教室用粉筆在黑板上講授,內(nèi)容較枯燥且受板書的限制,難以激發(fā)學(xué)生
興趣,教學(xué)效率低下,而對于初學(xué)的學(xué)生來說,入門較難,學(xué)起來比較吃力。為了達(dá)到良好的教學(xué)效果,利用多媒體進(jìn)行可視化教學(xué),把聲音、動(dòng)畫、圖形、文字等媒體有機(jī)地組合在一起,將難懂難理解的內(nèi)容以動(dòng)畫的形式展示出來,調(diào)動(dòng)學(xué)生學(xué)習(xí)積極性,把注意力集中到重點(diǎn)部分。通過逼真的動(dòng)畫顯示,使學(xué)生從視覺上和感官上真實(shí)地感受到微型計(jì)算機(jī)的內(nèi)部構(gòu)造。如在講授尋址方式的時(shí)候,可以通過動(dòng)畫的形式將尋址的過程以及各個(gè)寄存器的相關(guān)變化情況表現(xiàn)出來,這樣將枯燥的理論內(nèi)容可視化,提高學(xué)生的感官認(rèn)識(shí)。學(xué)生學(xué)習(xí)起來一目了然,并可以輕松理解幾種尋址方式的區(qū)別。另外,我們還可以利用動(dòng)畫模擬存儲(chǔ)單元物理地址的形成過程以及各邏輯段的分配過程,使學(xué)生更好地理解對存儲(chǔ)器的訪問等其他內(nèi)容。
2 匯編語言的可視化調(diào)試環(huán)境利用
匯編語言面向機(jī)器的硬件,相對比較抽象、指令偽指令較多、語法難記、調(diào)試?yán)щy、程序的可讀性差,在上機(jī)調(diào)試程序時(shí)又由于不能直接看到程序的運(yùn)行結(jié)果,實(shí)踐教學(xué)中學(xué)生很難掌握匯編語言的應(yīng)用。另外,在傳統(tǒng)的教學(xué)中,常用匯編語言教學(xué)調(diào)試工具DEBUG和MASM軟件都是在DOS下用指令運(yùn)行的,而學(xué)生對DOS操作系統(tǒng)不熟悉,不能理解,也跟不上教學(xué)步驟,教師的教學(xué)難度極大,實(shí)驗(yàn)的成
基金項(xiàng)目:上海市教委上海海洋大學(xué)重點(diǎn)課程建設(shè)項(xiàng)目(A2600-10-0053,A2600-10-0052);上海市高校本科教育高地建設(shè)項(xiàng)目(B8515-10-0001)。
作者簡介:孔祥洪,女,高級(jí)實(shí)驗(yàn)師,研究方向?yàn)槲锢響?yīng)用及控制技術(shù)。
功率很低。作者在教學(xué)中利用啟東的DVCC-8086的微機(jī)原理實(shí)驗(yàn)系統(tǒng)MASM for windows軟件進(jìn)行書寫程序,該軟件是一個(gè)結(jié)合了先進(jìn)可視化編輯器、編譯器,反編譯器,具有排錯(cuò)功能的軟件模擬工具,通過這樣的可視化程序調(diào)試環(huán)境進(jìn)行書寫程序時(shí),可有效提高學(xué)生的編程能力和上機(jī)調(diào)試技能,有利于加深學(xué)生對匯編語言的程序的理解,降低調(diào)試難度。圖1是啟東8086匯編語言的可視化調(diào)試環(huán)境,它具有高級(jí)語言,集成環(huán)境語言所具有的可視化集成環(huán)境的下拉菜單,圖標(biāo)化的快捷按鈕、熱鍵、快捷命令等特點(diǎn),如文件編輯菜單有文件、編輯、查找、選項(xiàng)、編譯菜單;實(shí)驗(yàn)指南菜單有編輯窗口的快捷菜單,可使用鼠標(biāo)右鍵來激活;調(diào)試部分有動(dòng)態(tài)調(diào)試菜單、窗口菜單;
窗口部分有編輯窗口、反匯編窗口、數(shù)據(jù)窗口、寄存器窗口;工具欄有編輯工具欄、調(diào)試工具欄、實(shí)驗(yàn)指南工具欄等等。而調(diào)試工具欄還具備聯(lián)接、編譯、調(diào)試、單步、運(yùn)行、斷點(diǎn)等功能。再如,菜單可用ALT/ALT+字母來激活,用熱鍵或字母來選擇所有輸入地址數(shù)據(jù)值等。
8086匯編語言可視化的調(diào)試環(huán)境在進(jìn)行程序調(diào)試時(shí)可以直接看到命令的執(zhí)行過程,得到程序運(yùn)行結(jié)果,這有利于學(xué)生掌握匯編語言的程序設(shè)計(jì)方法,培養(yǎng)實(shí)際動(dòng)手能力,激發(fā)學(xué)習(xí)匯編語言的興趣,同時(shí),也可以降低教學(xué)難度,使學(xué)生在短時(shí)間內(nèi)真正理解和掌握教學(xué)重點(diǎn)和難點(diǎn)。
3 可視化寄存器窗口、代碼數(shù)據(jù)窗口、反編譯器的利用
匯編語言是機(jī)器語言的符號(hào)化,通過它可以充分理解指令在計(jì)算機(jī)中的執(zhí)行過程,能夠最直接最有效地操作機(jī)器硬件系統(tǒng),編寫在時(shí)間和空間兩方面都是最有效的程序[4]。但編寫及調(diào)試匯編程序時(shí)相對高級(jí)語言程序要困難、復(fù)雜得多,如果利用可視化寄存器窗口、代碼地址數(shù)據(jù)窗口等調(diào)試環(huán)境,就可以幫助學(xué)生加強(qiáng)對低級(jí)語言編譯過程中時(shí)空高效性的理解。使學(xué)生能從物理存儲(chǔ)結(jié)構(gòu)和系統(tǒng)物理地址結(jié)構(gòu)兩方面建立起計(jì)算機(jī)系統(tǒng)的完整性、可控性的概念。8088匯編語言的可視化調(diào)試環(huán)境中可視化寄存器窗口如圖2所示,可視化代碼地址數(shù)據(jù)窗口如圖3所示。
在學(xué)習(xí)寄存器和存儲(chǔ)器的組織結(jié)構(gòu)時(shí),學(xué)生對很多概念只有一個(gè)很抽象、模糊的認(rèn)識(shí),這時(shí),我們可以通過8088教學(xué)軟件打開“窗口”菜單的“代碼數(shù)據(jù)窗口”和“寄存器窗口”,查看寄存器的狀態(tài);教師在講授存儲(chǔ)器和尋址方式的知識(shí)時(shí),利用可視化“代碼數(shù)據(jù)窗口”查看內(nèi)存單元,讓學(xué)生可以動(dòng)態(tài)了解內(nèi)存單元的地址與內(nèi)容,將抽象的內(nèi)容具體化;在講授指令的運(yùn)用時(shí),可以針對每一條指令,利用可視化窗口進(jìn)行指令的具體操作,讓學(xué)生從可視化窗口中觀察寄存器、內(nèi)存單元地址和標(biāo)志寄存器的變化情況。另外,教師還可運(yùn)用“代碼數(shù)據(jù)窗口”來查看程序的運(yùn)行結(jié)果,當(dāng)程序運(yùn)行結(jié)果不正確時(shí),通過“單步”調(diào)試和設(shè)置“斷點(diǎn)”等按鈕,隨時(shí)觀察寄存器和內(nèi)存單元的內(nèi)容,確定程序的錯(cuò)誤之處,還可以利用“反匯編窗口”和“斷點(diǎn)”設(shè)置進(jìn)行反匯編。圖4是觀察寄存器和內(nèi)存單元的中程序的指針地址與內(nèi)容,確定程序的錯(cuò)誤之處。
圖4 可視化反匯編窗口
4 結(jié)語
作為專業(yè)基礎(chǔ)課程,微機(jī)原理和匯編語言是學(xué)好后續(xù)專業(yè)課程的關(guān)鍵,是任何其他高級(jí)語言都不能完全取代的。教師應(yīng)該合理安排教學(xué)內(nèi)容,靈活運(yùn)用多種教學(xué)方法和現(xiàn)代教學(xué)手段,充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性和主動(dòng)性,提高教學(xué)的實(shí)際效果和質(zhì)量。通過對微機(jī)原理與匯編語言可視化教學(xué)改革,學(xué)生對該課程產(chǎn)生了更濃厚的學(xué)習(xí)興趣,取得了較顯著的教學(xué)成果,但是也還存在一些不完善的地方,這需要我們在以后的教學(xué)實(shí)踐中不斷改善。
參考文獻(xiàn):
[1] 馬浩. 淺談微機(jī)原理與匯編語言教學(xué)改革[J]. 科技創(chuàng)