唐小勇
摘要:近年來,創(chuàng)新創(chuàng)業(yè)已成為社會經(jīng)濟發(fā)展核心驅(qū)動力,創(chuàng)新型人才培養(yǎng)越來越受到各種教育教學方式的重視。該文以匯編語言程序設計中指令系統(tǒng)教學為研究對象,論述基于創(chuàng)新能力培養(yǎng)的匯編指令教學知識體系,以期能為提高計算機專業(yè)學生創(chuàng)新應用能力。
關(guān)鍵詞:創(chuàng)新能力;匯編指令;教學法
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2018)20-0107-01
1 匯編語言程序設計指令系統(tǒng)教學
匯編語言程序設計指令系統(tǒng)教學一直是其重點與難點,主要體現(xiàn)在指令數(shù)量龐大,格式復雜,可記憶性差等[1]。因而學生對掌握這部分知識具有畏難心理,傳統(tǒng)的講授式教學法一直效果不佳。如何提高匯編指令教學效果是困擾匯編語言程序設計教學的難題。對于匯編指令教學而言,主要要求學生掌握指令功能,包括每一條匯編指令能實現(xiàn)何種操作,目的是什么,而這些教學中通常是通過指令助記符來表示,為了方便記憶這些指令助記符都是英文單詞的縮寫形式。這就要求學生能把英語語言知識融合進程序設計中。其次,指令學最難的是指令所支持的尋址方式,其實質(zhì)就是指令中操作數(shù)如何獲取。對于處理器而言,就是如何找到他所需的數(shù)據(jù)。但對于計算機底層的匯編語言而言,這種尋址方式將涉及大量的計算存儲格式,與復雜的存儲管理方式緊密相關(guān),因而學生非常難以理解。最后,匯編指令還關(guān)系到如何影響標志位,但處理器標志位非常復雜,因而學生對其機制掌握就比較困難。這些知識點的復雜性都表明要提高匯編指令教學效果,必須采用新的教學方法、創(chuàng)新教學模式,以創(chuàng)新能力培養(yǎng)為核心來提高課堂教學效率,以提升教學質(zhì)量。
2 創(chuàng)新能力培養(yǎng)
近年來,創(chuàng)新創(chuàng)業(yè)已成為社會經(jīng)濟發(fā)展的重要驅(qū)動力,因而創(chuàng)新型人才培養(yǎng)已成為當前教育的核心工作。創(chuàng)新型人才不僅需要較強的自主研究意識,還需要具有良好的合作或協(xié)作精神。本質(zhì)上創(chuàng)新型人才應有批判性思維、開拓性思維和創(chuàng)造性思想。而如何培養(yǎng)這些思維方式,需要通過創(chuàng)新能力培養(yǎng)來實現(xiàn)。許多教育工作者在這方面做了有益嘗試,如國防科學技術(shù)大學機電工程與自動化學院易聲耀等人就機械基礎(chǔ)系列課程從主導思想、課程體系、教學內(nèi)容、教學模式與方法等方面提出以創(chuàng)新能力培養(yǎng)為核心的教學改革[2]。邵正宇等人針對物流專業(yè)提出創(chuàng)新型物流人才培養(yǎng)模式[3]。本文將針對匯編語言程序設計的指令系統(tǒng)教學,提出以創(chuàng)新能力培養(yǎng)為核心的指令教學知識體系。
3 基于創(chuàng)新能力培養(yǎng)的匯編指令教學知識體系
由于匯編指令系統(tǒng)龐大,因而需構(gòu)建指令系統(tǒng)體系。本文把匯編指令教學分為算術(shù)運算類指令、數(shù)據(jù)傳送類指令、邏輯運算類指令、串操作類指令和控制轉(zhuǎn)移類指令五大類。對每類我們將有針對性的構(gòu)建其以創(chuàng)新能力培養(yǎng)為核心的教學模式。對于算術(shù)運算類指令,其核心時進行計算,而計算結(jié)果與標位有重要關(guān)聯(lián)。因而這部分教學重點在于分析結(jié)果與標位關(guān)系上。例如對于減法操作指令SUB,其格式為SUB dest,src ,作用是dest←目的操作數(shù)dest-源操作src,結(jié)果是存放在目的操作數(shù)。但他6個狀態(tài)標志位是有影響的,如MOV eax,0aaff7348h,執(zhí)行操作sub al,27h后的結(jié)果是EAX=AAFF7321H,OF=0,SF=0,ZF=0,PF=1,CF=0??梢?,他依據(jù)標志位影響原則改變了所在標志位,教學時不僅要知道結(jié)果,更要知識這個結(jié)果出現(xiàn)的原因,通過原因分析以培養(yǎng)學生的創(chuàng)新能力。
對于數(shù)據(jù)傳送類指令,課堂教學將以圖形生動形象的演示其數(shù)據(jù)變化結(jié)果。如對于堆棧操作指令,教學時在強調(diào)“先進后出FILO”存取原則時,主要要看實際存儲區(qū)域數(shù)據(jù)變化,也就是棧頂數(shù)據(jù)動態(tài)變化過程。其實匯編指令中有兩條:數(shù)據(jù)進棧操作PUSH和數(shù)據(jù)出棧操作POP,關(guān)鍵是堆棧的變化。本文采用如下圖所示的圖形方式動態(tài)演示其數(shù)據(jù)變化效果。
對于邏輯運算類指令,本研究重點從操作位與其邏輯關(guān)系方面出發(fā),要求學生在掌握邏輯功能基礎(chǔ)上提高其創(chuàng)新應用能力。如循環(huán)(Rotate)移位指令的主要功能是將數(shù)據(jù)位一位位的移動,涉及左右關(guān)系、標志位和最高位、最低位等,要求學生理解其概念及異同來記憶ROL、ROR、RCL、RCR四個指令。對于一般邏輯操作指令,在理解基礎(chǔ)上主要側(cè)重其應用,特加要強調(diào)邏輯運算的在數(shù)據(jù)屏蔽中的應用,如I/O寄存器的讀寫功能與邏輯運算屏蔽。因而需要系統(tǒng)分析各種邏輯運算指令的作用,如AND指令復位某些數(shù)據(jù)位是同0與,從而不影響其他位;對于OR指令可以置位某些數(shù)據(jù)位,只要讓他們同1進行或運算;XOR指令可以求反某些數(shù)據(jù)位,方法是讓他們同1進行異或運算。這些知識結(jié)構(gòu)的教學將從點點滴滴中培養(yǎng)學生的創(chuàng)新應用能力。
4 小結(jié)
本文針對匯編語言程序設計指令系統(tǒng)教學的復雜性,提出以創(chuàng)新能力培養(yǎng)為核心的匯編指令教學知識體系。以期能為計算機專業(yè)學生的創(chuàng)新能力培養(yǎng)提供一點實踐參考。
參考文獻:
[1]張曉亞,唐東成,黎鈺珍,李彬,李欣雪. 匯編語言程序設計的重要性[M].電子技術(shù)(上海),2017 (6):70-71.
[2]易聲耀,徐海軍,羅自榮.基于創(chuàng)新能力培養(yǎng)的機械基礎(chǔ)系列課程教學改革探析[J].教育與教學研究,2015,29(8):69-72.
[3]邵正宇,張緒美,劉玲麗,金貴林.創(chuàng)新型物流人才培養(yǎng)模式研究[J].物流工程與管理,2010(5):180-182.