版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、計劃類別 項目編號 項目技術報告課題名稱 項目主持人 承擔單位 題目:計算機專業(yè)學生系統(tǒng)能力培養(yǎng)方法研究以函數參數為例,本文探討了在一個知識點的教學中所包含的計算機系統(tǒng)能力培養(yǎng)問題。在計算機系統(tǒng)的背景下討論一個知識點的微觀教學過程,分析一個知識點在各種課程中的不同呈現(xiàn)形式的基礎上,論述了課程之間在計算機系統(tǒng)能力培養(yǎng)方面的相互合作關系。提出了在以知識點為單元的教學過程中如何利用不同課程的知識以及它們之間的相互關系來培養(yǎng)學生系統(tǒng)能力的方法,取得了明顯的實際教學效果。關鍵詞:函數參數;知識點;系統(tǒng)能力;課程教學Abstract:Taking the function parameter as an
2、example,the paper explores computer system-level ability cultivation in the process of curriculum teaching based on knowledge points.The micro-teaching process is discussed under the background of computer systems.On the basis of analyzing the different presentation forms of one knowledge point in v
3、arious courses,the paper expounds the cooperation relationship in computer system-level ability cultivation among courses,and presents a method to cultivate computer system-level ability by making full use of the knowledge and the interrelationship of different courses,achieving great practical teac
4、hing effects.Keywords:function parameters;knowledge point;computer system-level ability;course teaching1 引言(Introduction)計算機系統(tǒng)能力是指在計算機系統(tǒng)的背景下理解計算機知識體系中的概念和方法,并能綜合運用系統(tǒng)中的各個部分,解決實際問題的能力。它強調了系統(tǒng)中各部分之間的關聯(lián)性,反映到教學中就是各課程之間的關聯(lián)性。然而,目前的計算機專業(yè)教學領域中,隨著各門課程自身的發(fā)展,課程內的結構和邏輯性日趨合理,而課程之間、課程與系統(tǒng)之間的隔離卻變得越來越嚴重。這導致對學生們的知識體系的完
5、整性和系統(tǒng)能力的培養(yǎng)受到限制。為了彌補傳統(tǒng)課程之間業(yè)已形成的隔離,國內外計算機教育專家做了大量的教學研究工作。20世紀末,美國卡內基-梅隆大學的R.E.Bryant提出了從程序員的角度、從系統(tǒng)的角度來進行計算機專業(yè)教學的觀點,并出版了深入理解計算機系統(tǒng)1,在計算機教育領域產生了廣泛的影響。該書通過打破課程之間的界限,試圖對計算機系統(tǒng)進行完整而深入的剖析,已被國內外很多大學作為計算機系統(tǒng)能力培養(yǎng)的教材。2013年,教育部教執(zhí)委系統(tǒng)研究組王志英等在文獻2中介紹了計算機系統(tǒng)能力培養(yǎng)的主要內涵及培養(yǎng)需求,闡述了系統(tǒng)能力培養(yǎng)和課程體系設置的總體思路。2014年,袁春風率先在南京大學和復旦大學開設了“計算
6、機系統(tǒng)基礎”課程,編寫了系統(tǒng)論述和系統(tǒng)實驗相結合的教材3。隨后,南京大學提出了四縱三橫的課程體系建設方案,在系統(tǒng)能力培養(yǎng)方面做了深入而系統(tǒng)的工作4。清華大學劉衛(wèi)東等5調整課程體系,統(tǒng)一規(guī)劃課程內容,并且在實驗教學中將操作系統(tǒng)和計算機組成等課程結合起來,實現(xiàn)了課程間的融合與貫通。在這樣的課程聯(lián)合中,學生可以在自己設計完成的CPU上,開發(fā)自己的操作系統(tǒng),并運行自己的應用程序。另外北京大學、國防科技大學、北京航空航天大學在系統(tǒng)能力培養(yǎng)方面都做出了各具特色的探討。以上研究是基于建立新的課程,或改革現(xiàn)有課程來構建計算機系統(tǒng)知識體系架構,為系統(tǒng)能力培養(yǎng)鋪平道路。他們都是從總體上構建系統(tǒng)教學實例,透過典型實
7、例讓學生了解計算機系統(tǒng)內部的相互關聯(lián)。在實際教學過程中,雖然都取得了很好的效果,但也付出了很大的代價,對現(xiàn)有教學體系進行了不小的改動,并且需要更多的課時。本文認為,系統(tǒng)能力體現(xiàn)的不僅是對系統(tǒng)總體框架的把握水平,同時也表現(xiàn)為面對具體問題時的一種思維方式。因此,雖然系統(tǒng)能力涉及整個系統(tǒng)范圍,然而系統(tǒng)能力的培養(yǎng)卻體現(xiàn)在思維的細節(jié)。作為對目前教學研究的補充,本文將系統(tǒng)能力的培養(yǎng)放到課程的微觀方面,即在知識點一級的微觀教學過程中來研究如何培養(yǎng)系統(tǒng)能力。下面將以函數參數為例,探討在一個知識點中所包含的系統(tǒng)能力培養(yǎng)素材以及如何利用這些素材提升學生的計算機系統(tǒng)能力。2 函數參數教學實例(Teaching ex
8、ample of thefunction parameter)函數是程序的基本結構,參數傳遞是實現(xiàn)函數間調用的基本功能。在計算機專業(yè)本科課程中,一般情況下,學生們是在高級語言課程首先接觸這個知識點。本文通過分析這個知識點,發(fā)現(xiàn)它所蘊含的計算機系統(tǒng)能力培養(yǎng)的素材和背景,并且以這個知識點為例,闡述提高學生計算機系統(tǒng)能力的教學方法。以C語言為例,普通的教科書6在講解這個知識點時,典型的內容如下:(1)形參的概念;(2)實參的概念;(3)形參與實參之間的關系;(4)演示類似圖1中程序的例子,讓學生獲得函數調用的體驗。對于單純學習高級程序設計語言的學生來講,以上關于函數參數傳遞的內容就足夠了,完全可以應
9、對一般的程序設計任務。然而,從計算機專業(yè)的角度看,僅從高級語言的角度理解函數參數是不夠的。例如,如果不清楚函數參數的傳遞過程,就無法理解緩沖區(qū)溢出的攻擊程序,無法設計出好的應用程序接口,也就無法提高參數傳遞的效率。endprint參數傳遞依賴的是棧,棧是數據結構課程中的概念。如何利用棧來實現(xiàn)參數的傳遞和函數的返回,則是編譯原理課程的內容。圖2顯示了計算機在執(zhí)行圖1中的程序時,進入子程序foo()后棧的狀態(tài)。當把參數按一定的順序逐個壓棧時,必須考慮參數的數據類型及它們在內存的放置。例如c、k和string所占的字節(jié)數,要解釋清楚需引入計算機組成和編譯原理中的知識。函數在遞歸調用時,參數被遞歸地壓
10、入棧中,隨著遞歸的深入,??臻g會越來越少。程序員稍不注意,其編寫的程序就會導致棧溢出。棧空間為什么會溢出呢?棧所占用的存儲空間是如何分配的?這些問題涉及了操作系統(tǒng)中地址空間的概念以及內存分配問題。除了參數傳遞所涉及的各課程的這些基本概念之外,稍微深入一點就會延伸到參數個數可變的情況。例如,在C語言中有printf(.)的例子,Java中還有多態(tài)性。圖3說明函數參數涉及了多門課程,必須將這些課程的相關知識綜合起來理解,才能培養(yǎng)學生從計算機系統(tǒng)的角度全面把握函數參數這樣的知識點。在各項應用中,能夠從整個計算機系統(tǒng)的范圍內尋找解決方案,這正是目前大學所提倡培養(yǎng)的計算機系統(tǒng)能力。國內外很多大學的計算機
11、專業(yè)教學往往增加一門新課程,以縱向的視角審視計算機系統(tǒng),打破課程之間的界限,從上而下地講解計算機系統(tǒng)的典型操作。例如,針對函數參數、文件的操作等,可以跨越高級語言、編譯程序、操作系統(tǒng)、計算機組成多門課程,深入闡釋其概念及實現(xiàn)細節(jié)。這種打破課程界限,從系統(tǒng)范圍思考問題的教學方法對于培養(yǎng)學生的計算機系統(tǒng)能力是非常重要的。然而,單獨開設一門課程的方法也存在一些問題:(1)作為一門課程,僅能將一些典型的知識點在系統(tǒng)范圍內展開講授,而系統(tǒng)思維是針對計算機系統(tǒng)的所有方面的。只要計算機系統(tǒng)中的某個對象出現(xiàn)問題,我們一般都需要從系統(tǒng)的角度思考和解決。所以從培養(yǎng)系統(tǒng)能力的角度這樣的課程缺少一定的覆蓋度。(2)這
12、樣的課程涉及現(xiàn)有課程的很多內容,要和現(xiàn)有課程有機融合,需要對目前的教學安排做較大的改動。本文認為,計算機系統(tǒng)能力的培養(yǎng)不應該僅是一門課的任務,應該貫穿在和計算機系統(tǒng)相關的所有課程中。系統(tǒng)能力,一方面是一個長期、綜合培養(yǎng)的結果,另一方面幾乎在每個知識點上都存在系統(tǒng)能力培養(yǎng)的素材和背景,因此完全可以把系統(tǒng)能力的培養(yǎng)落實到教學的細節(jié)。在后面的兩節(jié),我們將分別討論計算機系統(tǒng)觀的建立和計算機系統(tǒng)能力的培養(yǎng)方法,其著眼點都是基于知識點級的微觀教學。3 計算機系統(tǒng)觀(Computer system-levelperspective )在CSC20137中非常明確地引入了計算機系統(tǒng)觀的教學思想:計算機科學專業(yè)
13、的學生應當學會從細節(jié)到抽象的多個層次上去理解及思考問題。這種理解及思考應當超越計算機系統(tǒng)中各種不同部分的實現(xiàn)細節(jié),包括鑒賞計算機系統(tǒng)的結構以及它的構造和分析過程。他們需要識別計算機系統(tǒng)發(fā)揮作用的環(huán)境,包括與人和物理世界的交互。本文從兩個方面來詮釋上面關于計算機系統(tǒng)觀的要求:一是以聯(lián)系的觀點去觀察計算機系統(tǒng)中對象,這包括了計算機系統(tǒng)中的不同層次之間的關系和同一層次不同部分之間的關系;二是以抽象的觀點去理解計算機系統(tǒng)中的具體實現(xiàn),從而發(fā)現(xiàn)它們中的共性,包括系統(tǒng)結構和實現(xiàn)方法??梢姡嬎銠C系統(tǒng)觀是一種大局觀,但它絕不是空泛的理論和原理,而是面向具體問題的。它體現(xiàn)了學生認識問題的深度和廣度。要建立學生
14、的計算機系統(tǒng)觀,教師和學生承擔的角色也是不同的。教師是不能將觀點強加給學生的,而要將背景和知識展現(xiàn)給學生,讓學生自己去認識和體驗。能否形成計算機系統(tǒng)觀,還要依賴于學生個人能否從教師構建的教學背景中抽象出自己的觀點。計算機系統(tǒng)觀是獲得計算機系統(tǒng)能力的前提,也就是說我們只有用大的視角去看問題,才能在大的范圍內解決問題。4 面向知識點的系統(tǒng)能力培養(yǎng)方法(Training ofcomputer sstem-level ability based on knowledgepoints)當學生要解決計算機系統(tǒng)中的某個問題時,需要分析和該問題相關的所有系統(tǒng)內技術方案,從中找出最優(yōu)的,并評估該方案給系統(tǒng)帶來的
15、各方面的影響。因此,學生獲得計算機系統(tǒng)能力的前提是從系統(tǒng)的角度了解問題。反映到教學中,就是從各門課程的多個角度,去理解并掌握一個知識點。假如從某門課程的一個角度去講解一個知識點,稱為該知識點的一個知識片段,那么一個知識點的教學就是由若干個知識片段組成,在每門課程中有一個片段(也可能有若干個)。例如,在匯編語言中都會講到XCHG(intel)指令,用于實現(xiàn)兩個數據的交換。在操作系統(tǒng)課程中swap(XCHG)指令可以實現(xiàn)進程間的互斥。可見,數據交換指令這個知識點包含了兩個片段:一個在匯編語言中,一個在操作系統(tǒng)中。而在實際的計算機系統(tǒng)中,數據交換指令的這兩個功能是不會局限于課程的。傳統(tǒng)的教學中,每門
16、課程僅介紹一個知識點在本課程內的知識片段,課程之間缺少有意識的融合。當然,有經驗的教師和主動性強的學生都會在知識點的一個片段的教學過程中,聯(lián)系到其他課程的相關知識片段。知識點課程關系見表1。教師現(xiàn)在要做的就是把這種課程之間的聯(lián)系以規(guī)范的形式固定下來,成為教學過程的一個環(huán)節(jié),而不是依賴于個別教師或學生的經驗和主動性。具體做法如下:針對計算機系統(tǒng)中的每個知識點,定義它在各課程中的片段,形成知識點-課程關系表。當某門課的教師在教授一個知識點時,就去知識點-課程關系表中查找該知識點在其他課程中的片段。若學生已經在其他課程中學習了若干片段,那么教師就有責任將該課程的片段與其他課程的片段結合起來進行綜合講
17、解。例如,在操作系統(tǒng)中講到線程切換時,需要保存和回復CPU的現(xiàn)場信息,包括CPU的各類寄存器,此時需要結合計算機組成中已講過的“CPU現(xiàn)場信息”;在操作系統(tǒng)中講到線程調度時,需要結合C語言中使用的win32線程和Java語言中的Java線程的相關知識,如圖4所示。endprint顯然,建立知識點-課程關系表需要各門課程之間緊密的合作才能完成。計算機課程的設置是為了適應學校的教學體制,而且機械地分割了計算機系統(tǒng)知識體系。上述知識片段概念的引入體現(xiàn)了各專業(yè)課程對知識體系分割的現(xiàn)實。而知識點-課程關系表的建立可以有助于重建課程之間在計算機系統(tǒng)知識領域內的聯(lián)系。通過這種聯(lián)系,學生可以從計算機系統(tǒng)的角度
18、更全面地理解在課程中所學的知識,為系統(tǒng)觀的建立和獲得系統(tǒng)能力奠定基礎。與系統(tǒng)觀的建立過程相一致,學生必須進行跨越學科的大量的實踐訓練,才能獲得真正解決問題的能力。5 結論(Conclusion)本文概述了為提高計算機系統(tǒng)能力目前各大學所做的教學研究和采取的措施,提出了系統(tǒng)能力的培養(yǎng)前提是建立系統(tǒng)觀,而建立系統(tǒng)觀的方法就是加強各課程知識點之間的聯(lián)系,構造學生完整的計算機系統(tǒng)知識體系。將計算機系統(tǒng)能力的培養(yǎng)這樣一個宏觀問題,落實到在微觀教學中,培養(yǎng)學生以聯(lián)系的觀點觀察、分析計算機系統(tǒng)中的對象,這樣具體、可行的教學過程是本文研究的核心問題。計算機系統(tǒng)能力的培養(yǎng)不僅僅是建立系統(tǒng)觀的問題,更重要的是如何訓練學生們解決實際問題的能力,這是我們將進一步繼續(xù)研究的課題。參考文獻(References)1 R.E.Bryant,D.R.OHa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報參考:健康老齡化背景下社區(qū)老年運動健康促進典型案例與創(chuàng)新模式研究
- 2025版大型商業(yè)綜合體水電安裝工程分包合同范本2篇
- 二零二五年度生物醫(yī)藥創(chuàng)新平臺建設合同:地方政府與生物醫(yī)藥企業(yè)的合作3篇
- 2025版學校食堂承包合同包含食品安全培訓與監(jiān)督3篇
- 2025版微信公眾號與電商平臺跨界合作服務合同3篇
- 二零二五版綠化苗木培育與種植服務合同3篇
- 二零二五年度城市基礎設施大數據信息服務與維護合同4篇
- 二零二五年度便利店便利店加盟店員勞動合同3篇
- 2025年二手車買賣廣告宣傳合作協(xié)議4篇
- 二零二五年度便利店品牌授權及區(qū)域保護合同3篇
- 銷售與銷售目標管理制度
- 人教版(2025新版)七年級下冊英語:寒假課內預習重點知識默寫練習
- 2024年食品行業(yè)員工勞動合同標準文本
- 全屋整裝售后保修合同模板
- 高中生物學科學推理能力測試
- GB/T 44423-2024近紅外腦功能康復評估設備通用要求
- 2024-2030年中國減肥行業(yè)市場發(fā)展分析及發(fā)展趨勢與投資研究報告
- 運動技能學習
- 2024年中考英語專項復習:傳統(tǒng)文化的魅力(閱讀理解+完型填空+書面表達)(含答案)
- 公轉私人轉賬協(xié)議
- 液壓阻尼器工作原理
評論
0/150
提交評論