摘 要:本文闡述引入情境教學法進行匯編語言教學,克服高等職業(yè)教育計算機應用專業(yè)核心課程匯編語言不易掌握等不利因素,激發(fā)學生學習興趣,使學生變被動學習為主動求知,提高匯編語言學習質量。
關鍵詞:情境教學法;計算機;中斷調用;指令
中圖分類號:TP313 文獻標識碼:A DOI:10.3969/j.issn.1003-6970.2021.02.029
本文著錄格式:陳乃戰(zhàn).情境教學法在高職計算機專業(yè)匯編語言教學中的運用[J].軟件,2021,42(02):096-099
The Application of Situational Teaching Method in Assembly Language Teaching of Computer Major in Higher Vocational Colleges
CHEN Naizhan
(Fukuang Technician Institute, Fushun? Liaoning? 113000)
【Abstract】:This paper describes the introduction of situational teaching method for assembly language teaching, in order to overcome the disadvantageous factors such as assembly language, which is the core course of computer application major in higher vocational education, it is not easy to master, to stimulate students' interest in learning, to make students change passive learning into active learning, and to improve the quality of assembly language learning.
【Key words】:situational teaching method;computer;interrupt call;instruction
1 情境教學及其特點
情境教學是指教學過程中為達到既定的教學目標,從教學需要出發(fā),在課堂上構建與教學內容相適應的具體情境,并將學生引入既定情境,成為課堂教學的主體,從而激發(fā)學生的情感和學習興趣,引發(fā)學生共鳴,發(fā)揮主觀能動性,幫助學生在愉快的教學氛圍中以自主學習為主,高效準確的接受難以掌握的知識,達到在情境中獲得知識,培養(yǎng)能力,培養(yǎng)團結協(xié)作精神目的的一種教學方式。
根據(jù)匯編語言的抽象、難學、原理性強、與計算機硬件緊密相關等特點,依據(jù)教材內容、高職學生特點,結合現(xiàn)實計算機應用實際,創(chuàng)設生動的主題情境,讓學生受到主題情境的吸引,進入其中,在這個情境中體驗知識遞進式呈現(xiàn)并獲得的過程,從而激發(fā)學生內心的參與及成功獲得意識,讓學生能夠切實體驗到理論知識和實際應用緊密聯(lián)系的每個細節(jié),從而有效地促進了學生個體的認知、概括、分析、判斷、總結能力。情境教學具有以下特點:
(1)教師在情境教學中充當導演角色,成為整個教學的主導,學生成為課堂教學的主角參與到教師預先導演設定的問題情境中,情境教學所起的最重要的作用,就是能夠把學生的注意力吸引過來。(2)教學所創(chuàng)設的情境主題明確、脈絡清晰、環(huán)環(huán)相扣,與現(xiàn)實相關,學生由產(chǎn)生興趣開始,在老師的引導下產(chǎn)生了進一步認知的動力,繼而提高了學生的參與熱情和求知欲望。(3)教學中情境的方式豐富多樣,把握高職學生心理特點,切合實際的設定問題情境,會得到意想不到的效果。(4)在情境教學過程中,不僅激發(fā)了學生學習的興趣,更重要的是主動參與學習的體驗,克服被動學習的不足,養(yǎng)成主動求知的良好的學習習慣,打下基礎。(5)情境教學使學生在學習的過程中、會不斷發(fā)現(xiàn)新問題,然后通過老師引導,學生自身思考,解決問題,在認識-實踐-在認識-實踐的往復過程中,拓展到對知識的深層次的理解,進而取得更好的學習效果。(6)情境教學在提高學生理論聯(lián)系實際能力的同時,在教師引導-學生分析-教師啟發(fā)-學生拓展的過程中,潛移默化的培養(yǎng)了學生的創(chuàng)新能力。
2 匯編語言情境教學教學實例
2.1 設定情境,提出問題
由于匯編語言中的指令執(zhí)行過程,看不見,摸不著,教材案例多為偏重理論,結合實際性不強,學生缺乏興趣,更難聽懂,真正消化掌握,因此在選擇教學案例的時候一定要形象、生動、并且具有實用價值,由于匯編語言最強的優(yōu)勢是編寫硬件控制程序,因此本例主題是優(yōu)選能激發(fā)學生興趣的的硬件設備的編程控制,并且將程序控制計算機過程看得見,聽得到,所想即所得等設置問題情境,如本次選用:硬盤控制、顯示器控制、CMOS芯片控制,鍵盤控制程序,并上機調試通過。學生扮演的是程序設計人員,教師提供書面四個模塊的編程方法、教學目標、基本思路。由學生分析問題、解決問題,學生成為教學過程的主體,領銜主角,教師負責引導、示范、糾正、歸納總結成為整個教學過程的主導,領銜導演角色。
2.2 劃分模塊、適配分組、明確目標
根據(jù)同學自愿結合教師調配分為四個學習小組分別完成四個模塊:(1)硬盤控制組;(2)顯示器控制組;(3)CMOS芯片控制組;(4)鍵盤控制組。每組選出或教師根據(jù)學習情況指定一名能力較強的同學任組長。具體分配如下:
2.2.1 硬盤控制模塊
實現(xiàn):按鍵密碼控制計算機硬盤系統(tǒng)引導功能。
(1)教學目標:編寫一段程序判斷按鍵密碼,密碼正確引導計算機系統(tǒng),否則系統(tǒng)為保護狀態(tài)。(密碼為左SHIFT和左CTRL鍵)
(2)學生思路:在硬盤分區(qū)程序段中,從02A2H處開始有一段錯誤提示數(shù)據(jù),可在此處放置控制程序,程序控制可運用int 16h的2號子功能檢測鍵盤,判斷對應鍵是否按下,int13 中斷讀寫硬盤,也可用debug控制讀寫,下面提示的是DBR邏輯讀寫:
即相對0扇區(qū)
c>debug
-L CS:400 2 0 1
-E 05A1 00
-A CS:400 JMP 05A2
403 ^C
-A CS:5A2
CS:5A2 MOV AH,02
INT 16H
CMP AL,05
JNZ 05A2
JMP 022E
5AD NOP
5AE ^C
-W CS:400 2 0 1
-Q
INT 16H 2號子功能說明:AH=2,AL代表鍵盤狀態(tài)
Ins C-lock N-lock S-lock Alt CTRL 左Shift 右Shift
(3)學生思考:
1)本例采用的是對硬盤DBR的控制,是硬盤的邏輯讀寫(相對0扇區(qū)),還可以采用MBR控制,即硬盤的物理讀寫(0面0道1扇區(qū)),安全性會更好,思路是利用int 13 中斷的2、3號子功能,出口參數(shù)DX=0080,有興趣的同學試試。
關于硬盤絕對讀寫(0面0道1扇區(qū))的編程方法:
MOV? AX,0201
MOV BX,200
MOV CX,1
MOV DX,0080
INT 13H
INT 3H
……
寄存器具體參數(shù)說明:
BX:偏移地址
AH:02 對磁盤絕對讀? 03對磁盤絕對寫
AL:讀寫扇區(qū)數(shù)
CH:磁道號 CL:扇區(qū)號
DH:磁頭號? DL:硬盤
2)硬盤DBR與MBR在編程方法上何異同?邏輯讀寫與物理讀寫有何區(qū)別?
2.2.2 顯示器控制模塊
(1)教學目標:編寫顯示器顯示256種顏色的程序,循環(huán)程序設計。
(2)學生思路:定義顏色塊長度設計單元——定義顏色塊寬度設計單元——列坐標計數(shù)單元——每列顏色塊的塊數(shù)計數(shù)單元——設置顯示方式為320x200——顯示第一行顏色號——光標定位——顯示末行顏色號——循環(huán)顯示256種顏色,利用int10H中斷編程實現(xiàn)顯示控制,部分程序代碼如下:
設置顯示方式:
MOV AX,DATA
MOV DS,AX
MOV ES,AX
MOV AX,0013H
INT 10H
MOV DX,顏色首行顏色號偏移地址
MOV AH,9
INT 21H
MOV AH,2
MOV DX,1800H
INT 10H
MOV DX,顏色末行偏顏色號移地址
MOV AH,9
INT 21H
循環(huán)顯示256種顏色,循環(huán)程序設計:
MOV AH,0CH
INT 10H
INC LONG
CMP LONG 30
JZ NEXT
……
(3)學生思考:1)65536種顏色顯示如何實現(xiàn),改變控制器參數(shù)?2)INT 10中斷為顯示中斷,試一試其它圖像編程如特殊圖形等。3)文本顯示方式和圖形顯示方式的區(qū)別?
2.2.3 CMOS控制模塊
(1)教學目標:編寫程序實現(xiàn)CMOS芯片的讀寫控制,如保存和恢復。
(2)CMOS芯片控制思路:CMOS芯片存儲容量為64BYTE,以字節(jié)為單位讀寫,需循環(huán)64次,SI,AH為指針,具體內容和編程提示如下:
偏移地址? 內容
00H--0DH? 實時時鐘信息
10H? 軟驅動器類型
12H? 硬盤驅動器類型
14H? 設備字節(jié)
15H--16H? 基本存儲器字
17H--18H? 擴展存儲器
19H--1AH? 硬盤類型擴展字
2EH--2FH? CMOS校驗
方法: MOV AH,0
MOV AL,AH
OUT 70H,AL
IN AL,71H
MOV [SI],AL
INC SI
INC AH
……
MOV AL,[SI]
OUT 71H,AL
INC SI
INC AH
……
(3)學生思考:1)利用CMOS I/O嘗試可編寫該芯片的加密解密安全程序。2)CMOS芯片對于計算機自檢有何作用?
2.2.4 鍵盤控制模塊
(1)教學目標:用鍵盤彈奏音樂程序,分支程序設計。
(2)學生思路:所按鍵的鍵值轉換為對應的頻率,要實現(xiàn)用鍵盤的1-8鍵對應八個音符,編寫演奏音樂的程序,首先要把簡譜的音符一對一的翻譯為相應的頻率值:如表1、表2所示:
編程方法:取音符的頻率值賦值,判斷鍵盤按鍵,設置8255的PB口啟動揚聲器、設置8253的命令寄存器初始化通道2并且使8253以模式3進行工作,隨后把頻率值送8253的通道2——揚聲器發(fā)聲,關閉揚聲器。編程提示如:設置程序出口——判斷按鍵范圍(1——8)——初始化通道,設置工作方式——輸出頻率低字節(jié)——輸出頻率高字節(jié)——啟動揚聲器——關閉揚聲器,部分程序代碼如下:
MOV DI ,SI
CMP DI,0
JE? END_PLAY
MOV AH,1
INT 16H
……
OUT 42H,AL
MOV AL,AH
OUT 42H,AL
IN? AL,61H
……
(3)學生思考:具體音符和頻率快慢,因機器配置不同而不同,應反復微調參數(shù)測試幾次,確定效果最佳,INT16中斷判斷按鍵1-8分別對應八個音符,同學們試一試,編寫程序,按回車鍵自動播放一首歌曲,可選擇中音區(qū)簡單的曲子,如兩只老虎等。
2.3 巡回觀察、啟發(fā)糾錯、正確引導
在學生分析、設計、編碼的過程中,教師通過觀察學生的完成情況,及時發(fā)現(xiàn)學生出現(xiàn)的錯誤,進行啟發(fā)、引導,引發(fā)學生思考,如寄存器的選擇,存儲器的選擇、指令的選擇優(yōu)化,入口、出口參數(shù)的確定,程序結構順序、分支、循環(huán)的設計,優(yōu)化指令周期對執(zhí)行效率的影響、調試程序設置斷點的位置等,促進各組模塊任務順利完成、對于首先完成任務的小組,追加問題難度,分析解決各個模塊思考題,多組完成后,相互交流編程方法、心得,從而完成對應的其它模塊。
2.4 課程小結
通過四個綜合實例的自主學習,每個同學都很好的充當程序員的角色,從閱讀資料、程序分析、繪制流程圖、編寫程序、上機調試各個環(huán)節(jié)發(fā)揮的很好,各組組長充分發(fā)揮了帶頭作用,不僅帶領自己小組完成了模塊設計,還互相交流掌握了其它模塊的設計方法,通過本次課的學習,大家應該發(fā)現(xiàn)這四個模塊的異同點:
相同點:編程方法相同,這四個模塊主要思路都是采用INT中斷服務或I/O程序編程,其方法是:設置入口參數(shù)-出口參數(shù)-調用中斷服務程序或寄存器I/O。
不同點:入口參數(shù)、出口參數(shù)不同、中斷號不同,如模塊一硬盤編程是INT 13中斷,模塊2顯示器控制是INT 10中斷,模塊3 CMOS控制是利用I/O中斷,模塊4是鍵盤控制是利用INT16中斷功能。在程序技巧上,分別用傳送指令、I/O指令、比較指令、轉移指令等設計了順序、分支、循環(huán)程序,在程序調試過程中、合理設置斷點、反復調試、優(yōu)化指令周期、設計流程,程序更加簡潔、高效、實用。
本次教學,同學們參與度好、積極性高、學習質量、效率均有所提高,通過教師主導,學生互動,把原來四節(jié)課甚至更多的教學任務,兩節(jié)課就順利完成了,這主要得益于學生充分發(fā)揮了主觀能動性,和團結協(xié)作精神。通過本次學習,學生不僅初步掌握了中斷服務程序的編程方法、優(yōu)化原則,還更加熟練運用條件指令編寫分支、及循環(huán)程序編碼技巧,日后通過不斷學習,一定會深入掌握指令系統(tǒng)及256級中斷程序的編程方法及應用技巧,編寫更多具有實用價值的程序。
3 結語
本次情境教學,學生充分感受到,“在樂中學,在學中做,團結協(xié)作”的良好氛圍。學生在學習的過程中感受到由自主學習取得成功而獲得的成就感,在這個過程中學生更好的將課本知識與解決實際問題有機的聯(lián)系起來,充分發(fā)揮個人潛力,對培養(yǎng)學生主動分析問題,解決實際問題的能力,規(guī)避畏難情緒,由被動學習轉化為主動學習,并由此形成好的學習習慣,進而激活學生求知、創(chuàng)新思維,達到事半功倍的學習效果,具有實際意義。