亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于程序設(shè)計(jì)的“匯編語(yǔ)言”課程教學(xué)方法

        2013-08-23 07:13:36熊書明王良民馬學(xué)文陳向益
        關(guān)鍵詞:指令課程教學(xué)

        熊書明,王良民,曾 宇,馬學(xué)文,陳向益

        (江蘇大學(xué)計(jì)算機(jī)科學(xué)與通信工程學(xué)院,江蘇鎮(zhèn)江 212013)

        “匯編語(yǔ)言”是計(jì)算機(jī)類相關(guān)專業(yè)的一門重要基礎(chǔ)課程,也是學(xué)習(xí)“微機(jī)系統(tǒng)與接口技術(shù)”、“組成原理”、“操作系統(tǒng)”和“編譯原理”等課程的先修課程[1]。現(xiàn)在,許多高校已從講授16位機(jī)型匯編語(yǔ)言的基礎(chǔ)上,過(guò)渡到主流的32位機(jī)型。以授課Intel的80386CPU為藍(lán)本,講述32位的匯編語(yǔ)言程序設(shè)計(jì),以增強(qiáng)匯編語(yǔ)言的實(shí)用性。

        作為一門軟硬件相關(guān)的銜接性課程,“匯編語(yǔ)言”的教學(xué)方式不應(yīng)再局限于過(guò)去以語(yǔ)言本身為主的教學(xué)模式,而應(yīng)該適應(yīng)少學(xué)時(shí)情況的教學(xué)特征。我們結(jié)合課程教學(xué)經(jīng)驗(yàn)和學(xué)生學(xué)習(xí)反饋,對(duì)“匯編語(yǔ)言”的課程教學(xué)采用基于程序設(shè)計(jì)的教學(xué)方法,從課堂內(nèi)容組織和實(shí)踐項(xiàng)目安排等方面進(jìn)行教學(xué)改革,以提升該課程的教學(xué)效果。

        1 “匯編語(yǔ)言”課程教學(xué)現(xiàn)狀

        1.1 匯編語(yǔ)言學(xué)習(xí)的意義

        作為一種面向機(jī)器的低級(jí)程序設(shè)計(jì)語(yǔ)言,匯編語(yǔ)言編寫程序繁瑣,調(diào)試?yán)щy,且編程的通用性和可移植性相比C語(yǔ)言等高級(jí)語(yǔ)言較差,但是學(xué)好匯編語(yǔ)言程序設(shè)計(jì)對(duì)計(jì)算機(jī)類相關(guān)專業(yè)學(xué)生的培養(yǎng)仍具有重要意義。

        匯編語(yǔ)言本質(zhì)上就是機(jī)器語(yǔ)言,易于產(chǎn)生速度快、容量小的高效率目標(biāo)程序,這在某些軟件系統(tǒng)需要反復(fù)運(yùn)行的核心代碼部分顯得十分必要,能夠大大提升程序的執(zhí)行效率,因此可以在特殊場(chǎng)合作為編程工具使用。匯編語(yǔ)言可直接面向硬件完成相關(guān)操作,程序員能夠具體感知計(jì)算機(jī)的運(yùn)行過(guò)程,加深對(duì)計(jì)算機(jī)工作原理的理解,有益于對(duì)硬件和軟件之間的聯(lián)系和交互形成系統(tǒng)認(rèn)識(shí),形成計(jì)算機(jī)軟、硬兼?zhèn)涞木幊腆w系。學(xué)生通過(guò)匯編語(yǔ)言的學(xué)習(xí)能夠更好地理解諸如C、C++和Java等高級(jí)語(yǔ)言。高級(jí)語(yǔ)言中的數(shù)據(jù)類型、指針、全局變量、參數(shù)傳遞和分支結(jié)構(gòu)等都能在匯編語(yǔ)言中找到對(duì)應(yīng)的底層描述。在嵌入式系統(tǒng)開(kāi)發(fā)、系統(tǒng)底層軟件分析、加密/解密軟件編制、計(jì)算機(jī)病毒分析與防治等方面,匯編語(yǔ)言具有不可替代的地位。

        1.2 “匯編語(yǔ)言”課程教學(xué)中存在的問(wèn)題

        在“匯編語(yǔ)言”課程教學(xué)過(guò)程中,學(xué)生普通反映匯編語(yǔ)言學(xué)習(xí)難入門。究其原因,一方面因?yàn)閰R編語(yǔ)言涉及的內(nèi)容多,僅如Intel8086/8088CPU的16位系統(tǒng),指令系統(tǒng)就包括133條指令[2]。許多指令格式相差很大,而且往往在一條指令中操作數(shù)的尋址方式存在多種格式,加之80386CPU的32位指令和對(duì)應(yīng)的增強(qiáng)型尋址方式,使得匯編語(yǔ)言指令系統(tǒng)的學(xué)習(xí)更為困難。另一方面,學(xué)習(xí)匯編語(yǔ)言程序設(shè)計(jì)需要具備基本的計(jì)算機(jī)硬件知識(shí),了解計(jì)算機(jī)的邏輯機(jī)構(gòu),即編程結(jié)構(gòu)。程序員需要了解機(jī)器內(nèi)部的硬件資源,比如,有哪些寄存器,存儲(chǔ)器如何組織,外設(shè)接口如何組織和訪問(wèn)。

        我們?cè)凇皡R編語(yǔ)言”課程講授中,探討了以程序設(shè)計(jì)為核心的教學(xué)方法,圍繞匯編語(yǔ)言程序設(shè)計(jì)的需要展開(kāi)語(yǔ)言知識(shí)的學(xué)習(xí),循序漸進(jìn)地講解,可以提高課程的教學(xué)效果。

        2 程序設(shè)計(jì)為核心的教學(xué)方法

        2.1 認(rèn)識(shí)匯編語(yǔ)言程序框架

        作為一門程序設(shè)計(jì)語(yǔ)言,我們?cè)谥v授匯編語(yǔ)言時(shí),需要首先給出一個(gè)程序框架,類似于學(xué)C語(yǔ)言編程時(shí)的那個(gè)Helloworld程序。通過(guò)匯編語(yǔ)言程序框架,可以給學(xué)生進(jìn)行程序設(shè)計(jì)一個(gè)整體的程序結(jié)構(gòu)概念,在后續(xù)的學(xué)習(xí)中,學(xué)生可以不斷補(bǔ)充新的內(nèi)容,反復(fù)練習(xí)達(dá)到有效地掌握匯編語(yǔ)言程序結(jié)構(gòu)。一類常見(jiàn)匯編語(yǔ)言程序框架如表1所示。

        表1 匯編語(yǔ)言常用程序框架

        2.2 示例性尋址方式教學(xué)

        尋址方式可分為立即數(shù)尋址、寄存器尋址和內(nèi)存數(shù)尋址三大類,是匯編語(yǔ)言程序設(shè)計(jì)教學(xué)的難點(diǎn)和重點(diǎn)。尋址的目的是以給定方式找到相關(guān)的操作數(shù)(單元),立即數(shù)尋址是以數(shù)的方式直接提供,而寄存器尋址指的是數(shù)據(jù)在給定寄存器中,這兩種尋址方式比較直觀簡(jiǎn)單。內(nèi)存數(shù)尋址指的是操作數(shù)單元在內(nèi)存中,現(xiàn)在的問(wèn)題是如何找到這樣的單元,根據(jù)我們以往的教學(xué)經(jīng)驗(yàn),內(nèi)存數(shù)尋址是學(xué)生比較難以掌握的知識(shí)點(diǎn)。在8086/8088匯編語(yǔ)言的內(nèi)存數(shù)尋址中,包括寄存器間接尋址、寄存器相對(duì)尋址、基址變址尋址和相對(duì)基址變址尋址。

        我們根據(jù)尋址方式需要什么語(yǔ)言元素,就學(xué)習(xí)什么語(yǔ)言元素,以學(xué)了什么就反復(fù)使用什么的原則組織教學(xué)。首先選取寄存器間接尋址作為內(nèi)存數(shù)尋址方式的學(xué)習(xí)切入點(diǎn),通過(guò)具體示例,講解寄存器間接尋址的用法。選用BX、SI、DI、BP作為寄存器間接尋址用的寄存器,反復(fù)地使用寄存器間接尋址方式去訪問(wèn)內(nèi)存單元,加深尋址方式具體應(yīng)用的理解,從而可以使學(xué)生有效掌握該尋址方式。同時(shí),在利用這些具體寄存器做間接尋址時(shí),比較它們的異同點(diǎn)。在完成基本的寄存器間接尋址教學(xué)后,通過(guò)實(shí)際應(yīng)用示例存在的問(wèn)題,引入寄存器相對(duì)尋址來(lái)解決該問(wèn)題,引入新教學(xué)內(nèi)容的同時(shí),可以培養(yǎng)學(xué)生提出新問(wèn)題和解決新問(wèn)題的能力,拓展學(xué)生素質(zhì)教育。通過(guò)該方法,學(xué)生在“螺旋式上升”過(guò)程中逐步掌握了多種尋址方式,而且明確了不同尋址方式的用法和區(qū)別。

        2.3 漸進(jìn)式指令系統(tǒng)教學(xué)

        如前所述,按部就班地講解完指令系統(tǒng),再講述程序結(jié)構(gòu)進(jìn)行學(xué)生的編程訓(xùn)練,難以激發(fā)學(xué)生的學(xué)習(xí)興趣,而且繁雜的指令系統(tǒng)學(xué)習(xí)往往會(huì)使得學(xué)生經(jīng)常遭受挫折,喪失學(xué)習(xí)的信心。Intel 80X86指令系統(tǒng)主要包括數(shù)據(jù)傳送、算術(shù)運(yùn)算、邏輯運(yùn)算、控制轉(zhuǎn)移、串處理和處理器處理6類指令。這些指令的講解需要分階段和漸進(jìn)式講授,以適應(yīng)知識(shí)認(rèn)知的規(guī)律。

        我們?cè)谥v授指令的時(shí)候,同時(shí)結(jié)合程序結(jié)構(gòu)的應(yīng)用,及早將順序結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和分支結(jié)構(gòu)等內(nèi)容貫穿到指令系統(tǒng)的講解過(guò)程中,使得學(xué)生掌握匯編語(yǔ)言程序設(shè)計(jì)的能力。在后續(xù)專門講述匯編語(yǔ)言程序結(jié)構(gòu)的章節(jié)中,其講課內(nèi)容作為前面程序結(jié)構(gòu)具體應(yīng)用的總結(jié),這樣先讓學(xué)生有一個(gè)感性認(rèn)識(shí),再做理論總結(jié)。這種以程序設(shè)計(jì)為核心的匯編語(yǔ)言授課方法在我校09和10級(jí)計(jì)算機(jī)類專業(yè)中應(yīng)用后,學(xué)生普遍反映學(xué)寫基本的匯編語(yǔ)言程序難度不大,從而提高了授課效果。

        作為示例,我們?cè)谥v述指令系統(tǒng)中的算術(shù)運(yùn)算指令中的加法時(shí),采用如下的授課方式。

        (1)從基本的計(jì)算指令A(yù)DD開(kāi)始,以順序結(jié)構(gòu)講述最簡(jiǎn)單的計(jì)算。

        (2)利用ADC講述稍微復(fù)雜一點(diǎn)的計(jì)算,包括在數(shù)據(jù)段中完成變量定義,程序仍然以順序結(jié)構(gòu)進(jìn)行組織。

        (3)講述INC指令,實(shí)現(xiàn)稍微再?gòu)?fù)雜一點(diǎn)的計(jì)算,使用簡(jiǎn)單的循環(huán)結(jié)構(gòu)進(jìn)行重復(fù)計(jì)算。在這一步,需要將LOOP指令提前講述,初步培養(yǎng)程序分支跳轉(zhuǎn)的編程思想;同時(shí),鞏固CX和BX等寄存器的用法,實(shí)現(xiàn)了難點(diǎn)分散的目的。

        (4)以綜合性的例子,仍然用循環(huán)程序結(jié)構(gòu),來(lái)強(qiáng)化上述指令和程序結(jié)構(gòu)的學(xué)習(xí)。

        在這樣的編排下,學(xué)生可以清楚地知道,學(xué)一點(diǎn)就可以用一點(diǎn),所學(xué)的每一個(gè)語(yǔ)言成分有什么用處,如何去用。在學(xué)完加法指令后,學(xué)生便感到已經(jīng)可以編寫程序,完成有使用價(jià)值程序的編寫了。

        3 編程能力為導(dǎo)向的上機(jī)實(shí)踐

        上機(jī)實(shí)踐是學(xué)習(xí)匯編語(yǔ)言程序設(shè)計(jì)的一個(gè)重要環(huán)節(jié),具有不可替代的作用。通過(guò)該環(huán)節(jié)能夠使學(xué)生對(duì)匯編語(yǔ)言程序設(shè)計(jì)獲得具體的感性認(rèn)識(shí),進(jìn)一步理解課上講授的理論知識(shí)[3]。為培養(yǎng)學(xué)生編制、調(diào)試匯編語(yǔ)言程序的能力,我們以編程能力的培養(yǎng)為出發(fā)點(diǎn)制定了如表2所示的上機(jī)實(shí)驗(yàn)項(xiàng)目。這些實(shí)驗(yàn)項(xiàng)目分為三類:驗(yàn)證性實(shí)驗(yàn)、設(shè)計(jì)性實(shí)驗(yàn)和綜合性實(shí)驗(yàn)。

        表2 上機(jī)實(shí)驗(yàn)項(xiàng)目安排

        驗(yàn)證性實(shí)驗(yàn)必做,其目的是進(jìn)一步加深學(xué)生對(duì)課堂講授基本內(nèi)容的理解,強(qiáng)調(diào)匯編語(yǔ)言程序?qū)嶒?yàn)過(guò)程基本能力的培養(yǎng)。設(shè)計(jì)性實(shí)驗(yàn)主要考慮培養(yǎng)學(xué)生的程序設(shè)計(jì)能力,每個(gè)題目通過(guò)精心設(shè)計(jì),涵蓋若干知識(shí)點(diǎn),力求從程序設(shè)計(jì)的角度培養(yǎng)學(xué)生的編程思維和解決實(shí)際問(wèn)題的能力。根據(jù)學(xué)生自身情況選擇完成4個(gè)。綜合性實(shí)驗(yàn)主要從軟件工程的角度,培養(yǎng)學(xué)生程序設(shè)計(jì)的能力,程序規(guī)模相對(duì)較大,作為匯編語(yǔ)言編程能力培養(yǎng)的進(jìn)一步拓展,供學(xué)有余力的學(xué)生選做。

        上機(jī)實(shí)踐結(jié)束后,要求學(xué)生通過(guò)實(shí)驗(yàn)報(bào)告和心得體會(huì)進(jìn)一步鞏固所學(xué)內(nèi)容。

        4 結(jié)語(yǔ)

        針對(duì)當(dāng)前“匯編語(yǔ)言“課程教學(xué)中存在的問(wèn)題,本文探討了基于程序設(shè)計(jì)的“匯編語(yǔ)言”課程教學(xué)方法,從匯編語(yǔ)言程序框架、尋址方式教學(xué)、指令系統(tǒng)組織和上機(jī)實(shí)踐項(xiàng)目設(shè)置等4個(gè)方面給出了漸進(jìn)式教學(xué)的具體措施。該方法在我校計(jì)算機(jī)類相關(guān)專業(yè)進(jìn)行了具體實(shí)踐,收到良好效果,連續(xù)兩屆課程學(xué)習(xí)不及格率在10%以下?,F(xiàn)在,學(xué)生利用匯編語(yǔ)言編寫程序的能力大為提高,也為其他相關(guān)課程的學(xué)習(xí)打下良好基礎(chǔ)。

        [1] 安楊,趙波.“匯編語(yǔ)言程序設(shè)計(jì)”課程教學(xué)改革的研究[J].南京:電氣電子教學(xué)學(xué)報(bào),2007,29(6):7-9.

        [2] 沈美明,溫冬嬋.IBM-PC匯編語(yǔ)言程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2001.

        [3] 宓雙,熊書明,楊文顯.新編匯編語(yǔ)言程序設(shè)計(jì)題解與實(shí)驗(yàn)指導(dǎo)[J].北京:清華大學(xué)出版社,2011.

        猜你喜歡
        指令課程教學(xué)
        聽(tīng)我指令:大催眠術(shù)
        數(shù)字圖像處理課程混合式教學(xué)改革與探索
        微課讓高中數(shù)學(xué)教學(xué)更高效
        甘肅教育(2020年14期)2020-09-11 07:57:50
        軟件設(shè)計(jì)與開(kāi)發(fā)實(shí)踐課程探索與實(shí)踐
        為什么要學(xué)習(xí)HAA課程?
        ARINC661顯控指令快速驗(yàn)證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        “自我診斷表”在高中數(shù)學(xué)教學(xué)中的應(yīng)用
        東方教育(2017年19期)2017-12-05 15:14:48
        對(duì)外漢語(yǔ)教學(xué)中“想”和“要”的比較
        坐標(biāo)系旋轉(zhuǎn)指令數(shù)控編程應(yīng)用
        青青青爽在线视频免费播放| 亚洲爆乳无码专区| 青楼妓女禁脔道具调教sm| 国产麻豆精品久久一二三| 美女啪啪国产| 久久免费精品视频老逼| 日本在线观看三级视频| 美女视频黄是免费| 99精品国产99久久久久久97| 99久久综合九九亚洲| 伊人狼人激情综合影院| 亚洲av永久无码精品网站| 国产精品免费av片在线观看| 国产zzjjzzjj视频全免费| 第十色丰满无码| 日本一区二区三区女优在线| 久久久久88色偷偷| 精品国产精品久久一区免费式| 欧美在线观看www| 亚洲天堂一区二区三区视频| 最新露脸自拍视频在线观看| 日韩少妇内射免费播放| 国产女高清在线看免费观看 | 日本二区视频在线观看| 国产女主播一区二区三区| 亚洲精品午夜无码专区| 2021国产精品视频| 97超碰国产一区二区三区| 一边摸一边抽搐一进一出视频| 中文字幕无码不卡一区二区三区| 久久精品国产72国产精福利| 91久久香蕉国产熟女线看| 把女的下面扒开添视频| 国产熟妇人妻精品一区二区动漫| 国产免费看网站v片不遮挡| 国产精品久久三级精品| 好大好湿好硬顶到了好爽视频 | 久久精品亚洲国产成人av| 日本亚洲国产精品久久| a级毛片在线观看| 日韩无码尤物视频|