朱颯爽 王成 陳娟
摘要:從微機(jī)原理課程特點(diǎn)及教學(xué)現(xiàn)狀出發(fā),分析傳統(tǒng)教學(xué)方式的弊端。探討了EMU8086在微機(jī)原理課程線上線下混合式教學(xué)模式中的應(yīng)用,以8086的數(shù)據(jù)尋址方式的教學(xué)為例,介紹了EMU8086仿真軟件的特點(diǎn)和功能,分析了8086數(shù)據(jù)尋址方式在該課程中的重要性。通過實(shí)際案例介紹如何使用 EMU8086 進(jìn)行8086數(shù)據(jù)尋址方式的教學(xué)。實(shí)踐表明,在混合式教學(xué)模式下,通過使用 EMU8086輔助教學(xué),學(xué)生可以更直觀地理解8086處理器的工作原理和數(shù)據(jù)尋址方式,能夠有效提高學(xué)生對(duì)微機(jī)原理的理解和實(shí)際操作能力。
關(guān)鍵詞:EMU8086;微機(jī)原理;教學(xué)應(yīng)用;8086數(shù)據(jù)尋址方式
中圖分類號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2024)13-0174-03 開放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID) :
0 引言
微機(jī)原理是工科院校電子及自動(dòng)化類相關(guān)專業(yè)的核心課程,具有理論性強(qiáng)、概念抽象、知識(shí)點(diǎn)多等特點(diǎn)。內(nèi)容一般涉及微處理器的內(nèi)部結(jié)構(gòu)、指令系統(tǒng)、存儲(chǔ)器和輸入輸出系統(tǒng)等方面,是一門高度綜合性的課程。不僅能夠培養(yǎng)學(xué)生的微機(jī)應(yīng)用及軟、硬件設(shè)計(jì)應(yīng)用能力,同時(shí)也是學(xué)生后續(xù)進(jìn)行編程設(shè)計(jì)與軟硬件開發(fā)的基礎(chǔ)。因此,這門課程教學(xué)質(zhì)量的好壞直接關(guān)系到學(xué)生的專業(yè)素質(zhì)與技能。在實(shí)際教學(xué)中,學(xué)生普遍反映課程難度大,概念抽象,難以理解。而傳統(tǒng)教學(xué)方法往往注重理論知識(shí)的傳授,以教師為中心的單向傳授,學(xué)生缺乏主動(dòng)參與和互動(dòng)的機(jī)會(huì),會(huì)導(dǎo)致學(xué)生的學(xué)習(xí)積極性不高,對(duì)課程內(nèi)容缺乏興趣。
為提高微機(jī)原理課程教學(xué)效果,目前筆者所在學(xué)校微機(jī)原理課程在采用線上線下混合式教學(xué)模式的同時(shí),通過改進(jìn)教學(xué)方法、豐富教學(xué)形式、融入信息化工具等多種方式提升課程教學(xué)效果。針對(duì)微機(jī)原理課程的特點(diǎn),在教學(xué)過程中,以混合式教學(xué)模式為載體,針對(duì)不同章節(jié)的知識(shí)要點(diǎn),有效借助EMU8086和PROTEUS仿真工具,采用演示法、練習(xí)法、實(shí)驗(yàn)法、任務(wù)驅(qū)動(dòng)法等教學(xué)方法,合理進(jìn)行教學(xué)設(shè)計(jì),可以極大提高教學(xué)效果。本文以8086數(shù)據(jù)尋址方式教學(xué)為例,借助EMU8086仿真工具,通過“課前線上預(yù)習(xí)+課中線下講授演示+課后實(shí)操”的形式組織教學(xué),既能激發(fā)學(xué)生的學(xué)習(xí)興趣,又能讓學(xué)生對(duì)寄存器、存儲(chǔ)器、指令系統(tǒng)等產(chǎn)生感性認(rèn)識(shí),還能提高學(xué)生的動(dòng)手實(shí)踐能力,加深對(duì)微機(jī)原理知識(shí)的理解和掌握[1-2]。
1 EMU8086 仿真軟件簡介
EMU8086是一個(gè)8086微處理器的模擬器,它可以在PC上模擬8086微處理器的運(yùn)行環(huán)境。其提供了直觀的用戶界面,用戶可以通過圖形化的方式查看和編輯8086微處理器的寄存器、內(nèi)存、堆棧等信息。支持8086匯編語言的編譯,用戶可以在軟件中編寫、編譯和運(yùn)行8086匯編代碼。強(qiáng)大的調(diào)試功能,包括單步執(zhí)行、斷點(diǎn)設(shè)置、寄存器查看、內(nèi)存查看等,方便用戶調(diào)試和排除程序中的錯(cuò)誤[3-4]。功能強(qiáng)大、易于使用,可以為用戶提供方便快捷的開發(fā)和調(diào)試環(huán)境,適合8086微處理器的學(xué)習(xí)、開發(fā)和測試工作。
2 8086數(shù)據(jù)尋址方式在微機(jī)原理課程中的重要性
8086數(shù)據(jù)尋址方式一般是繼微機(jī)基礎(chǔ)知識(shí)和內(nèi)部結(jié)構(gòu)知識(shí)的后續(xù)內(nèi)容,是微機(jī)原理課程由淺入深的關(guān)鍵節(jié)點(diǎn),起著承上啟下的重要作用[5]。8086是X86 架構(gòu)的先驅(qū),其尋址方式是計(jì)算機(jī)底層操作的基礎(chǔ),是8086匯編語言編程的核心概念。通過學(xué)習(xí)8086數(shù)據(jù)尋址方式,學(xué)生可以深入了解計(jì)算機(jī)如何通過地址訪問內(nèi)存中的數(shù)據(jù),以及如何進(jìn)行地址計(jì)算和偏移量的處理。對(duì)于編寫高效的8086匯編代碼以及理解程序的執(zhí)行過程非常重要[6],了解不同的尋址方式可以幫助學(xué)生選擇合適的方式來訪問和操作數(shù)據(jù),提高程序的性能和效率。掌握8086尋址方式能為學(xué)生提供一個(gè)堅(jiān)實(shí)的基礎(chǔ),有助于理解更高級(jí)的計(jì)算機(jī)體系結(jié)構(gòu)和操作系統(tǒng)的概念。
3 EMU8086在8086數(shù)據(jù)尋址方式教學(xué)中的應(yīng)用
8086數(shù)據(jù)尋址方式是微機(jī)原理中的重要概念,它涉及內(nèi)存訪問和指令執(zhí)行的整個(gè)過程。8086 微處理器一般分三大類共7種數(shù)據(jù)尋址方式:立即尋址、寄存器尋址、存儲(chǔ)器尋址,其中存儲(chǔ)器尋址又分為5種,直接尋址、寄存器間接尋址、寄存器相對(duì)尋址、基址加變址尋址和相對(duì)基址變址尋址[7]。
EMU8086仿真器可以很好地模擬8086微處理器的運(yùn)行過程,通過它學(xué)生可以更加直觀地了解數(shù)據(jù)尋址的過程和相關(guān)指令的執(zhí)行。在實(shí)際教學(xué)中,課前筆者通過學(xué)習(xí)通線上發(fā)布學(xué)習(xí)任務(wù),包括學(xué)生課前觀看線上短視頻了解知識(shí)點(diǎn)內(nèi)容、發(fā)布討論主題、完成預(yù)習(xí)基礎(chǔ)題目、安裝EMU8086仿真器并初步熟悉該軟件的使用方法。因8086數(shù)據(jù)尋址方式分類較多,易于混淆,在教學(xué)過程中,一定要根據(jù)學(xué)生的接收能力,由淺入深,由易到難,循序漸進(jìn)引導(dǎo)學(xué)生。筆者在教學(xué)中一般以最簡單最直觀的方式入手,降低學(xué)生對(duì)難點(diǎn)的恐懼,提高學(xué)生學(xué)習(xí)的信心和興趣。課中以立即尋址、寄存器尋址、直接尋址這三種尋址方式為例,介紹EMU8086課中的具體教學(xué)應(yīng)用。
3.1 應(yīng)用于立即尋址方式教學(xué)
立即尋址方式中,操作數(shù)包含在指令中,它作為指令的一部分,跟在操作碼后存放在代碼段。在理論教學(xué)中,一般以MOV指令為例,除立即數(shù)外還會(huì)涉及8086的內(nèi)部寄存器,單純的理論介紹,過于抽象,學(xué)生很難理解。這時(shí)借助EMU8086 通過運(yùn)行相應(yīng)的指令,可以直觀看到寄存器的變化。例如,指令“MOVAX, 1234H”這里的源操作數(shù)SRC為立即數(shù),源操作數(shù)的尋址方式即為立即尋址方式,完成的操作是把立即數(shù)1234H送寄存器AX中[8]。執(zhí)行前,AX寄存器的內(nèi)容是0000H,執(zhí)行后變?yōu)?234H,且可直觀看到高位12H放在AH中,低位34H放在了AL中,這樣學(xué)生不僅了解了立即尋址的方式,還通過觀察了解了16位立即數(shù)在寄存器中的具體存放方式,對(duì)了解CPU的內(nèi)部結(jié)構(gòu)以及工作原理都有幫助。對(duì)比指令運(yùn)行前后寄存器的變化,如圖1所示。
3.2 應(yīng)用于寄存器尋址方式
在寄存器尋址方式下,指令的操作數(shù)為CPU的內(nèi)部寄存器,可以是數(shù)據(jù)寄存器(8位或16位),也可以是地址指針、變址寄存器或段寄存器。這一尋址方式寄存器的內(nèi)容即是操作數(shù)本身。剛接觸時(shí)學(xué)生經(jīng)常會(huì)和后續(xù)學(xué)到的寄存器間接尋址混淆,如果只是單純的理論講授,學(xué)生很難分清兩者的區(qū)別,但是借助EMU8086結(jié)合實(shí)際的指令,學(xué)生通過觀察指令執(zhí)行前后存儲(chǔ)器或寄存器的變化,能夠很好地理解寄存器尋址。例如,以下幾行指令:
MOV AX,1234H
MOV BX,5678H
MOV BX,AX
這三行指令中,前兩行源操作數(shù)正好用到前面剛學(xué)習(xí)的立即尋址方式,通過EMU8086單步執(zhí)行觀察指令運(yùn)行情況,進(jìn)一步鞏固所學(xué)內(nèi)容。第三行指令中源操作數(shù)和目的操作數(shù)均為寄存器尋址方式。執(zhí)行前,AX、BX中內(nèi)容均為0000H;執(zhí)行最后一行指令后,AX的內(nèi)容賦給BX,均為1234H,前一行指令賦給BX 的內(nèi)容被覆蓋,賦值后AX的值不變,如圖2所示。
3.3 應(yīng)用于直接尋址方式教學(xué)
存儲(chǔ)器尋址是指操作數(shù)就在存儲(chǔ)器的數(shù)據(jù)區(qū)中,當(dāng)CPU需要訪問某一存儲(chǔ)單元時(shí),先確定段地址,根據(jù)指令中的偏移量(也成有效地址EA) 形成物理地址,才能進(jìn)行讀或?qū)懖僮?。存?chǔ)器尋址方式比較明顯的特點(diǎn)是指令中一般有“[]”。相對(duì)于立即尋址和寄存器尋址方式而言,因其形式多樣,學(xué)生學(xué)起來會(huì)更有難度。對(duì)于五種存儲(chǔ)器尋址方式,最好從直接尋址方式著手,由易到難,層層遞進(jìn),加上EMU8086的生動(dòng)演示,學(xué)生更容易理解接受,也更能激起學(xué)生學(xué)習(xí)的興趣。直接尋址是存儲(chǔ)器尋址的一種,“[]”內(nèi)直接用常數(shù)給出偏移地址,數(shù)據(jù)的段地址默認(rèn)為數(shù)據(jù)段。因本節(jié)學(xué)習(xí)時(shí),還未開始學(xué)習(xí)指令,盡量用最簡單的指令說明教學(xué)意圖。例如,指令:MOV AX,[0016H],指令完成的操作是把DS:0016H和DS:0017H兩個(gè)內(nèi)存單元中的內(nèi)容分別送AL和AH中,執(zhí)行后,AX的內(nèi)容為F490H。執(zhí)行前后寄存器及存儲(chǔ)器內(nèi)容變化如圖3 所示。
課中選擇立即尋址、寄存器尋址及直接尋址方式進(jìn)行介紹,正好分屬8086數(shù)據(jù)尋址方式的三類。通過課前線上預(yù)習(xí)及EMU8086仿真軟件認(rèn)識(shí),課中借助EMU8086以通用傳送類指令MOV為載體,由易到難,分別對(duì)立即尋址、寄存器尋址和直接尋址方式進(jìn)行單步運(yùn)行演示,觀察寄存器、存儲(chǔ)器的變化,通過指令運(yùn)行前后的對(duì)比,可以使學(xué)生對(duì)尋址方式有直觀的了解和認(rèn)識(shí)。課中的演示教學(xué)法由淺入深,層層遞進(jìn),對(duì)比教學(xué)很容易使學(xué)生掌握基本三類尋址方式。但是,存儲(chǔ)器尋址方式相對(duì)于其他尋址方式而言更靈活,更復(fù)雜,更易混淆,是學(xué)生學(xué)習(xí)的重點(diǎn)和難點(diǎn)。因此課上教學(xué)只是“師傅領(lǐng)進(jìn)門”,而后續(xù)對(duì)4種存儲(chǔ)器尋址方式的掌握就是“修行靠個(gè)人”了。那么怎么確保學(xué)生可以“修成正果”呢?這個(gè)“修”的過程才是真正培養(yǎng)學(xué)生舉一反三、自主學(xué)習(xí)以及動(dòng)手能力的關(guān)鍵。對(duì)于存儲(chǔ)器尋址方式的寄存器間接尋址、寄存器相對(duì)尋址、基址加變址尋址和相對(duì)基址變址尋址4種方式的學(xué)習(xí),可以采用任務(wù)驅(qū)動(dòng)法,通過發(fā)布學(xué)習(xí)任務(wù),驅(qū)動(dòng)學(xué)生自主學(xué)習(xí)和解決實(shí)際問題。例如,分別采用直接尋址、寄存器間接尋址、基址加變址及相對(duì)基址變址的尋址方式,如何實(shí)現(xiàn)將DS:2000H存儲(chǔ)單元的內(nèi)容1234H 發(fā)送到DS:3000H 存儲(chǔ)單元中。以任務(wù)為驅(qū)動(dòng),借助學(xué)習(xí)通進(jìn)行線上討論,線下通過教師引導(dǎo)、學(xué)生實(shí)操、課中匯報(bào)的形式,激發(fā)學(xué)生學(xué)習(xí)興趣,促進(jìn)學(xué)生自主學(xué)習(xí),提高課堂教學(xué)效果,進(jìn)而培養(yǎng)學(xué)生的創(chuàng)造性思維能力和實(shí)踐應(yīng)用能力。
4 結(jié)束語
為提高微機(jī)原理的教學(xué)效果,從課程內(nèi)容及特點(diǎn)出發(fā),在混合式教學(xué)模式下,結(jié)合EMU8086的特點(diǎn),以尋址方式教學(xué)為例,詳細(xì)介紹了EMU8086在8086 數(shù)據(jù)尋址方式教學(xué)中的應(yīng)用。實(shí)踐表明,EMU8086在微機(jī)原理數(shù)據(jù)尋址方式教學(xué)中效果明顯,能夠幫助學(xué)生更好地理解和掌握相關(guān)的原理和概念。
在微機(jī)原理教學(xué)過程中,尋址方式只是入門,后續(xù)匯編相關(guān)指令以及接口應(yīng)用教學(xué)中可以充分利用EMU8086等信息化工具,結(jié)合實(shí)際教學(xué)內(nèi)容,不斷學(xué)習(xí)、潛心研究,使感性認(rèn)識(shí)和理性認(rèn)識(shí)相統(tǒng)一,使理論和實(shí)踐相結(jié)合,激發(fā)學(xué)生的學(xué)習(xí)興趣,培養(yǎng)學(xué)生的創(chuàng)新精神和實(shí)踐能力 [9]。
參考文獻(xiàn):
[1] 程和生,程和俠,程和斌. 基于仿真軟件的微機(jī)原理與接口技術(shù)課程教學(xué)研究[J]. 現(xiàn)代信息科技,2023,7(20):185-189.
[2] 王青. Emu8086和Proteus在微機(jī)原理教學(xué)中的研究與應(yīng)用[J]. 電腦知識(shí)與技術(shù),2021,17(35):251-253.
[3] 程蘭,馬春燕,閻高偉. 仿真軟件在微機(jī)原理與接口技術(shù)教學(xué)及實(shí)驗(yàn)中的應(yīng)用和探討[J]. 計(jì)算機(jī)教育,2021(9):181-185.
[4] 羅珈. EMU8086軟件在微機(jī)原理及接口技術(shù)數(shù)字中的應(yīng)用[J]. 數(shù)字技術(shù)與應(yīng)用,2017(4):85.
[5] 林新.“微機(jī)原理” 教學(xué)方法研究實(shí)例[J]. 電氣電子教學(xué)學(xué)報(bào),2021,43(5):94-97.
[6] 趙蒼榮,辛元芳,郭來功. 微機(jī)原理課程教學(xué)改革與研究[J].電腦知識(shí)與技術(shù),2021,17(10):181-183.
[7] 吳寧,閆相國. 微型計(jì)算機(jī)原理與接口技術(shù)[M]. 5版. 北京:清華大學(xué)出版社,2022.
[8] 趙全利. 微型計(jì)算機(jī)原理及應(yīng)用[M]. 北京:人民郵電出版社,2022.
[9] 時(shí)偉. EMU8086在微機(jī)及接口技術(shù)教學(xué)中的應(yīng)用[J]. 電子世界,2019(2):77-78.
【通聯(lián)編輯:朱寶貴】
基金項(xiàng)目:鄭州西亞斯學(xué)院校級(jí)教改項(xiàng)目《微機(jī)原理與應(yīng)用》 線上線下混合一流課程建設(shè)研究與實(shí)踐(項(xiàng)目編號(hào)2023JGYB16) ,2024年度河南省高等學(xué)校重點(diǎn)科研項(xiàng)目(項(xiàng)目編號(hào):24B510016)