六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學(xué)習(xí)啦>論文大全>畢業(yè)論文>計算機(jī)論文>計算機(jī)理論>

計算機(jī)理論的論文范文特輯

時間: 詩琪1201 分享

  下面是小編為你整理整合的關(guān)于基本理論的一些論文范文,歡迎閱讀瀏覽,希望你喜歡。

  優(yōu)化程序長度的一種方法

  摘要:本文分析了Microsoft公司優(yōu)化程序長度的P-CODE 技術(shù)的基本工作原理、P-CODE的使用方法以及P-CODE程序的性能。提出了P-CODE編譯的程序調(diào)試時應(yīng)注意的主要問題。

  關(guān)鍵詞:程序優(yōu)化 代碼壓縮 P-CODE 編譯指示器 程序調(diào)試

  1. 前言

  用戶要求應(yīng)用程序有更多更全的功能,使得應(yīng)用程序的代碼長度持續(xù)增長,但由于系統(tǒng)的開放性,有時也要求應(yīng)用程序能在多種環(huán)境下運(yùn)行,有很好的可移植性。這要限制應(yīng)用程序的代碼長度,減少其運(yùn)行時所占的內(nèi)存容量。

  Microsoft公司為了滿足此需求,在其應(yīng)用程序開發(fā)包中引進(jìn)了一種稱為P-CODE(Packed Code, 壓縮碼)的代碼壓縮技術(shù)。此技術(shù)與本地機(jī)器無關(guān),在大多數(shù)情況下,可把執(zhí)行程序的長度減少大約40%,為程序員提供了一個靈活而又容易實(shí)現(xiàn)的解決方案,減少了應(yīng)用程序?qū)?nèi)存容量日益增長的需求。

  2. P-CODE工作原理

  P-CODE 的基本工作原理是編譯器先把執(zhí)行程序編譯為比80X86機(jī)器碼緊湊得多的中間代碼形式,然后在鏈接時把一個小工作引擎嵌入執(zhí)行程序中,最后在運(yùn)行時由此工作引擎把P-CODE解釋為本地機(jī)器碼實(shí)際執(zhí)行。為了方便使用,P-CODE技術(shù)實(shí)現(xiàn)于編譯過程的代碼生成階段。例如開發(fā)者在C/C++中應(yīng)用P-CODE技術(shù)時,只需把它作為一個“優(yōu)化”選項(xiàng)選中即可

  2.1. 指令格式

  在應(yīng)用P-CODE技術(shù)時,鏈接器會自動拷貝一份長度約為9K的P-CODE工作引擎到執(zhí)行程序中,程序運(yùn)行時它仿真一個虛擬處理器。

  P-CODE技術(shù)能壓縮執(zhí)行程序代碼長度的關(guān)鍵就在于工作引擎的指令格式。我們知道,在現(xiàn)代計算機(jī)的指令格式中,指令除指令碼外,還包括指出源和目的操作數(shù)的地址碼,真正的操作數(shù)一般放在內(nèi)存和寄存器中。而一般常用的指令格式是二地址碼結(jié)構(gòu),少量使用一地址碼和零地址碼結(jié)構(gòu)。例如最簡單的兩個寄存器值相加匯編指令寫為:ADD AX, BX; AX←(AX)+(BX)

  而P-CODE是一個獨(dú)立于本地機(jī)器的虛擬指令系統(tǒng),其工作引擎是一個基于堆棧的虛擬機(jī),它的大多數(shù)指令中只有指令碼,沒有地址碼部分,隱含操作數(shù)存儲于系統(tǒng)堆棧中,因而遠(yuǎn)比本地機(jī)器指令緊湊。同樣上述的工作,P-CODE就可簡化為ADDW,它執(zhí)行時從堆棧中彈出操作數(shù),運(yùn)算后的結(jié)果再壓回堆棧中。如用80x86匯編指令表示,就等價于下列指令段:

  POP AX ;彈出第一個操作數(shù)到AX寄存器中

  POP BX ;彈出第二個操作數(shù)到BX寄存器中

  ADD AX, BX ;把兩數(shù)相加,結(jié)果存貯于AX寄存器中

  PUSH AX ; 將AX寄存器中的結(jié)果壓回堆棧中

  2.2. 操作碼長度

  P-CODE引擎使用堆棧隱含尋址,使得其操作碼長度平均小于2個字節(jié),分為標(biāo)準(zhǔn)和擴(kuò)展的操作碼兩大類。

  標(biāo)準(zhǔn)操作碼占用一個字節(jié),由255條最常用的指令組成,擴(kuò)展操作碼由256條不太常用的指令組成。有統(tǒng)計表明,在一個全部編譯為P-CODE的20萬行的C程序中,一字節(jié)指令使用頻率為56%,占代碼長度比例為37%,二字節(jié)指令使用頻率為39%,占代碼長度比例為52%,而三或四字節(jié)指令占用了余下很小的百分比。

  2.3. 引用

  P-CODE技術(shù)優(yōu)化執(zhí)行程序長度的另一個重要特性是引用。引用就是編譯器優(yōu)化時,去掉代碼段的重復(fù)現(xiàn)象,共享代碼段的單個實(shí)例,類似于在高級語言中使用函數(shù)或過程的方法,當(dāng)然它是編譯器自動進(jìn)行的。編譯器優(yōu)化時檢查它所產(chǎn)生的代碼,尋找指令段重復(fù)的地方,在程序中只保留重復(fù)段的一次出現(xiàn),將所有其它出現(xiàn)的地方都改為指向保留段的一條跳轉(zhuǎn)指令。此技術(shù)為執(zhí)行程序長度壓縮了大約5-10%的額外空間。

  2.4. 本地入口點(diǎn)

  使用P-CODE,在程序代碼中有時也會產(chǎn)生額外的空間開銷,這就是P-CODE函數(shù)前面的本地入口點(diǎn)。

  當(dāng)程序中局部使用P-CODE編譯時,很可能會發(fā)生機(jī)器碼函數(shù)調(diào)用P-CODE函數(shù)的情況。由于P-CODE指令段需由P-CODE引擎解釋執(zhí)行,這時就需要編譯器在P-CODE函數(shù)開始處額外增加幾條機(jī)器指令即本地入口點(diǎn),以便機(jī)器轉(zhuǎn)換控制,停止執(zhí)行本地機(jī)器碼而調(diào)用P-CODE引擎,由P-CODE引擎繼續(xù)解釋執(zhí)行P-CODE函數(shù)。

  3. P-CODE使用方法

  P-CODE可用于Microsoft的Visual C++、Visual Basic等許多應(yīng)用程序開發(fā)包中,它可全局地用于整個應(yīng)用程序,也可通過使用“Pragmas”編譯指示有選擇地用于局部模塊中。

  3.1. 全局使用方法

  當(dāng)要求以部分速度代價來達(dá)到程序長度的顯著減小時,可對應(yīng)用程序全局地使用P-CODE編譯。如主要用于用戶界面的程序,象字處理器、電子日歷、小型企業(yè)財務(wù)軟件包等。

  此使用方法比較簡單,只要改變應(yīng)用工程的編譯選項(xiàng),然后重新編譯即可。例如在Visual C++工程中加上編譯選項(xiàng)開關(guān)“/Oq”,或在Visual Basic工程屬性的編譯頁幀中,選中“編譯為P-代碼”選項(xiàng)。

  3.2. 局部使用方法

  若要在程序的速度和長度性能上達(dá)到比較平衡的滿意效果,可在Visual C++源文件中有選擇性地加上P-CODE編譯指示,具體地指示編譯器將哪一段代碼編譯為P-CODE,而將哪一段代碼編譯為本地機(jī)器碼格式。

  P-CODE局部使用方法是將編譯指示器“#Pragma Optimize(“q”,on)”置入想用P-CODE的模塊或函數(shù)開始處,而在用P-CODE的模塊或函數(shù)結(jié)束處加上編譯指示器“#Pragma Optimize(“q”,off)”。

  一般來說,要想達(dá)到比較滿意的使用效果,就要將主要影響程序執(zhí)行速度的模塊或函數(shù)編譯為本地機(jī)器碼,如頻繁調(diào)用的函數(shù)、出現(xiàn)在循環(huán)內(nèi)的函數(shù)等。而將相對來說對程序的執(zhí)行速度起次要作用、主要影響程序長度的模塊或函數(shù)編譯為P-CODE,如用戶接口過程中的菜單和對話框模塊,因?yàn)檫@里程序執(zhí)行速度上的犧牲相對于用戶的工作速度來說,是微不足道的。還有一些很少使用的模塊或函數(shù),如出錯處理函數(shù)、一般情形下不會用到的功能模塊也應(yīng)編譯為P-CODE。

  4. P-CODE程序調(diào)試

  用P-CODE編譯的程序,可使用Microsoft提供的調(diào)試工具如CodeView調(diào)試器等來進(jìn)行調(diào)試。它對源代碼級和P-CODE匯編指令級二者都給予支持,所有正常的CodeView調(diào)試器命令,如BREAK、STEP、WATCH等在本地機(jī)器碼和P-CODE碼兩種方式下都會起作用,只不過在P-CODE方式下,程序在斷點(diǎn)暫停后,寄存器窗口顯示的是堆棧和P-CODE工作引擎的狀態(tài)。

  因?yàn)镻-CODE的引用會產(chǎn)生許多跳轉(zhuǎn)指令,使得目標(biāo)程序調(diào)試時難于閱讀和跟蹤,所以較好的策略是在程序開發(fā)調(diào)試階段用編譯開關(guān)“/Of_”關(guān)掉引用,當(dāng)程序全部調(diào)試完畢后再打開引用優(yōu)化編譯開關(guān)。

  5. P-CODE性能分析

  P-CODE技術(shù)的本質(zhì)是用程序執(zhí)行時間的少量增加來換取其長度的明顯減小。雖然P-CODE指令由工作引擎解釋執(zhí)行,固有地慢于CPU本地機(jī)器碼的執(zhí)行,但程序總體所需的執(zhí)行時間還取決于一些系統(tǒng)因素和程序員使用P-CODE的技巧。在內(nèi)存一定的環(huán)境中,大程序長度的減小也相應(yīng)地減少了其執(zhí)行時所需的內(nèi)存容量,從而需要較少的虛擬內(nèi)存交換頁,且相應(yīng)地提高了Cache命中率,因而減少了其運(yùn)行時的系統(tǒng)開銷,故其P-CODE版本和本地機(jī)器碼版本最終在執(zhí)行速度上的差異很小。另外,采用P-CODE后,程序長度減小了,系統(tǒng)總的吞吐率也得到了改善。

  6. 結(jié)束語

  Microsoft的P-CODE技術(shù)為程序員提供了一種以少量增加運(yùn)行時間代價而較方便地壓縮執(zhí)行文件長度的方法。它可通過簡單地重編譯而在程序中全局地使用,局部使用時將編譯指示置于關(guān)鍵過程之前,可保證最大限度地壓縮代碼長度而使性能損失最小化。

  動機(jī)理論在高職計算機(jī)教學(xué)中的應(yīng)用

  計算機(jī)課程是高職學(xué)生的一門重要課程,要求學(xué)生掌握基本的操作技能與操作方法,并為其他學(xué)科的學(xué)習(xí)以及將來的工作奠定良好的基礎(chǔ)。但高職學(xué)生文化課基礎(chǔ)比較薄弱,學(xué)習(xí)積極性較差,部分學(xué)生缺乏學(xué)習(xí)動機(jī)和自信心,嚴(yán)重影響了計算機(jī)教學(xué)的順利開展。因此,將動機(jī)理論應(yīng)用到計算機(jī)教學(xué)中,具有重要的現(xiàn)實(shí)意義。

  一、高職學(xué)生缺少學(xué)習(xí)動機(jī)的原因

  1.內(nèi)在因素

  高職學(xué)生學(xué)習(xí)基礎(chǔ)普遍薄弱,缺乏自制力與刻苦鉆研的精神。同時,由于對所學(xué)專業(yè)了解不多,大部分學(xué)生沒有明確的學(xué)習(xí)目標(biāo),缺乏主動學(xué)習(xí)的積極性。另外,由于部分學(xué)生沒有養(yǎng)成良好的學(xué)習(xí)習(xí)慣,所衍生的不良學(xué)習(xí)氣氛不僅影響了班級整體的學(xué)習(xí)氛圍,還制約了其他學(xué)生學(xué)習(xí)動機(jī)的產(chǎn)生。

  2.外在因素

  部分高職學(xué)生認(rèn)為計算機(jī)課程與社會需求脫節(jié),導(dǎo)致課程教學(xué)無法對學(xué)生產(chǎn)生吸引力。同時,陳舊的教學(xué)方法、枯燥的授課方式、滯后的考試形式,也嚴(yán)重影響了高職計算機(jī)課程的教學(xué)質(zhì)量,進(jìn)而形成惡性循環(huán),直接影響學(xué)生學(xué)習(xí)動機(jī)的產(chǎn)生。

  二、動機(jī)理論在高職計算機(jī)教學(xué)中的應(yīng)用

  1.注意策略應(yīng)用

  注意是一種心理活動,若缺乏注意,將無法順利展開心理活動。在計算機(jī)教學(xué)中,教師應(yīng)積極運(yùn)用注意策略,吸引學(xué)生注意,真正讓學(xué)生參與到計算機(jī)教學(xué)中來。在設(shè)計注意策略時,最重要的是讓學(xué)生選擇、感知信息,進(jìn)而產(chǎn)生穩(wěn)定、明確的心理趨向。具體方法如下:①讓學(xué)生明確認(rèn)識到計算機(jī)知識的重要性,激發(fā)學(xué)生學(xué)習(xí)的積極性。教師可以通過講解計算機(jī)廣泛應(yīng)用的生動案例,使學(xué)生真正知曉計算機(jī)知識和技能的重要性,并加強(qiáng)課堂教學(xué)與現(xiàn)實(shí)生活的聯(lián)系,將教與學(xué)變成有價值、有意義的事情,由此激發(fā)學(xué)生的學(xué)習(xí)興趣。②用懸念激發(fā)好奇心。在教學(xué)過程中,教師可以通過預(yù)留問題、設(shè)置懸念等方式激發(fā)學(xué)生的好奇心,讓學(xué)生帶著問題思考,吸引學(xué)生將注意力放到學(xué)習(xí)上。③營造寬松的學(xué)習(xí)氛圍。更好地滿足學(xué)生對知識的渴望,有效地吸引學(xué)生學(xué)習(xí)計算機(jī)課程。例如,在學(xué)習(xí)計算機(jī)系統(tǒng)知識時,可以設(shè)計學(xué)生拆卸、安裝主機(jī)箱的教學(xué)活動,使學(xué)生在寬松、自由的環(huán)境中學(xué)習(xí),提高參與性與創(chuàng)造性。

  2.相關(guān)策略應(yīng)用

  相關(guān)策略是指將所學(xué)知識與學(xué)生的需求、動機(jī)、目的聯(lián)系起來,如果學(xué)生認(rèn)識到學(xué)習(xí)內(nèi)容與自身實(shí)際需求密切相連,就會表現(xiàn)出極大的學(xué)習(xí)興趣。因此,教師可以在教學(xué)過程中引入相關(guān)策略,具體方法如下:①共建學(xué)習(xí)目標(biāo)。在相關(guān)策略的指導(dǎo)下,教師可以在每節(jié)課的教學(xué)結(jié)束后讓學(xué)生自己制定下節(jié)課的學(xué)習(xí)內(nèi)容,結(jié)合教學(xué)內(nèi)容及學(xué)生的想法共建學(xué)習(xí)目標(biāo),提高教學(xué)針對性。②結(jié)合學(xué)生學(xué)習(xí)水平安排適度的學(xué)習(xí)任務(wù)。有了適宜的學(xué)習(xí)任務(wù),學(xué)生就能及時完成并獲得成功的體驗(yàn),進(jìn)而大幅度提高學(xué)習(xí)動機(jī)。在安排學(xué)習(xí)任務(wù)、制定學(xué)習(xí)目標(biāo)時,要制定讓學(xué)生努努力、使使勁就可以完成的目標(biāo)。因此,教師需要了解學(xué)生已有的經(jīng)驗(yàn)、知識、需求、興趣等,合理安排學(xué)習(xí)任務(wù)。

  3.自信策略應(yīng)用

  應(yīng)用自信策略發(fā)展學(xué)生的自信心是教學(xué)成功的重要保障。如果學(xué)生認(rèn)識到努力程度與收獲之間存在密切聯(lián)系,就會投入更多努力,學(xué)習(xí)更有韌性。在計算機(jī)教學(xué)中,教師應(yīng)鼓勵學(xué)生,提高學(xué)生的自信心,并將學(xué)生學(xué)習(xí)上的成功歸因于努力而不是運(yùn)氣,結(jié)合表揚(yáng)、鼓勵等方式,激發(fā)學(xué)生學(xué)習(xí)的自信心與動力。

  4.滿意策略應(yīng)用

  滿意是維持、加強(qiáng)學(xué)習(xí)動機(jī),并使學(xué)習(xí)動機(jī)穩(wěn)定、持久的重要因素。在該策略的指導(dǎo)下,教師應(yīng)合理、正確地表揚(yáng)學(xué)生。表揚(yáng)是最容易激發(fā)學(xué)生學(xué)習(xí)動機(jī)的方式,但是也最容易被忽視。在教學(xué)過程中,教師應(yīng)掌握并善于運(yùn)用表揚(yáng),對學(xué)生的努力進(jìn)行適度的表揚(yáng)、贊賞,以激發(fā)學(xué)習(xí)積極性。同時,要完善計算機(jī)教學(xué)的評價標(biāo)準(zhǔn),改變過去以成績單為主的評價方法,通過多標(biāo)準(zhǔn)的評價方式,提高學(xué)生的滿意感。

  三、小結(jié)

  綜上所述,動機(jī)理論在高職計算機(jī)教學(xué)中應(yīng)用效果顯著,能有效激發(fā)、培養(yǎng)學(xué)生的學(xué)習(xí)動機(jī),全面提升學(xué)生的技能水平與動手能力。在實(shí)際教學(xué)中,教師應(yīng)善于利用注意策略、相關(guān)策略、自信策略、滿意策略等,切實(shí)激發(fā)學(xué)生的學(xué)習(xí)動機(jī),提升高職計算機(jī)教學(xué)質(zhì)量。


計算機(jī)理論論文相關(guān)文章:

1.計算機(jī)專業(yè)論文范文

2.計算機(jī)專業(yè)論文精選范文

3.有關(guān)計算機(jī)方面的論文

4.大學(xué)計算機(jī)課程論文

5.計算機(jī)基礎(chǔ)畢業(yè)論文范文

4066438