版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、在嵌入式系統(tǒng)中,為了提高程序執(zhí)行效率而代替高級語言片段使用的內(nèi)嵌匯編嚴(yán)重影響了程序的可移植性和可讀性。為了解決這種矛盾,本文借鑒了主流中間語言(如.net字節(jié)碼和Java字節(jié)碼)的概念和設(shè)計方法,設(shè)計了一種可以和高級語言混合使用的基于虛擬寄存器的中間語言(VR-IL,VirtualRegister-Intermediate Language)。這種中間語言可以高效的轉(zhuǎn)換為機(jī)器語言,同時也可以支持多種目標(biāo)機(jī)器語言。這樣在保持匯編語言的執(zhí)行
2、效率的前提下解決了匯編語言的可移植性問題。本質(zhì)上是以空間和運(yùn)行時編譯時間換取執(zhí)行效率和可移植性。 在語法層面上,VR-IL語言是一種構(gòu)建在C語言函數(shù)基礎(chǔ)上的程序設(shè)計語言,其語句均由實現(xiàn)特定功能的C語言函數(shù)表達(dá),可以認(rèn)為C語言函數(shù)是VR-IL語言的基本語法單位。在語義層面上,VR-IL語言的執(zhí)行以生成中間代碼為目的,按照在生成中間代碼過程中的作用可以把VR-IL語句分為兩類:直接生成中間代碼語句和輔助生成中間代碼語句。VR-IL語
3、言的功能由中間代碼來實現(xiàn)。 VR-IL中間代碼和物理指令存在映射關(guān)系,在形式上,類似物理指令,具有操作數(shù)和操作碼,是物理指令的抽象。為了和物理指令區(qū)別,稱VR-IL中間代碼為虛擬指令。虛擬指令集被賦予了實現(xiàn)語言平臺無關(guān)性的使命,及時編譯器處理器相關(guān)層完成從虛擬指令到物理指令的映射,屏蔽了目標(biāo)處理器指令系統(tǒng)的復(fù)雜細(xì)節(jié),能夠滿足嵌入式系統(tǒng)多平臺應(yīng)用的需求。 VR-IL的編譯過程分為兩階段,首先由高級語言編譯器執(zhí)行靜態(tài)編譯
4、,編譯以后的VR-IL程序運(yùn)行后生成VR-IL中間代碼即VR-IL虛擬指令。然后由VR-IL及時編譯器對中間代碼執(zhí)行動態(tài)編譯,產(chǎn)生可供中間語言外部應(yīng)用程序直接調(diào)用的目標(biāo)機(jī)器代碼,完成整個中間語言編譯過程。 本文實現(xiàn)了一個基本完整的程序語言系統(tǒng),研究、實現(xiàn)了一些現(xiàn)代編譯理論的算法。最后通過比較VR-IL、C和ARM內(nèi)嵌匯編的執(zhí)行時間證明了VR-IL的效率優(yōu)勢,說明VR-IL基本達(dá)到了設(shè)計目標(biāo)。VR-IL不僅為提高高級語言應(yīng)用程序的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于虛擬寄存器的中間語言.pdf
- 基于串聯(lián)寄存器和純輪換寄存器構(gòu)造de Bruijn序列的研究.pdf
- 基于寄存器的Python虛擬機(jī)的設(shè)計與實現(xiàn).pdf
- 實驗數(shù)碼寄存器
- 移位寄存器
- 寄存器堆的設(shè)計.pdf
- 基于龍芯Ⅰ的全局寄存器分配研究.pdf
- 移位寄存器71669
- 移位寄存器66874
- 移位寄存器70889
- 基于VMMRAL的寄存器驗證方法的研究.pdf
- 雙向移位寄存器
- 相連多寄存器組體系結(jié)構(gòu)上的寄存器分配技術(shù).pdf
- 基于異常的中間語言代碼混淆器的設(shè)計與實現(xiàn).pdf
- 基于中間語義的跨語言信息檢索研究.pdf
- 基于fpga的16位寄存器設(shè)計
- 移位寄存器66798
- 移位寄存器及其應(yīng)用
- 和中斷有關(guān)的專用寄存器
- 基于核間寄存器的多核虛擬機(jī)通信機(jī)制研究與實現(xiàn).pdf
評論
0/150
提交評論