新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式FORTH虛擬計(jì)算機(jī)的實(shí)現(xiàn)

嵌入式FORTH虛擬計(jì)算機(jī)的實(shí)現(xiàn)

作者: 時(shí)間:2013-12-17 來(lái)源:網(wǎng)絡(luò) 收藏

5.NEXT核心算法與函數(shù)

本文引用地址:http://butianyuan.cn/article/256992.htm


虛擬機(jī)的核心算法--NEXT,它完成了指令的控制執(zhí)行過(guò)程。如借用以上描述,用形式化的方法表示為:


由于虛擬機(jī)是工作在真實(shí)計(jì)算機(jī)上,因此要實(shí)現(xiàn)虛擬機(jī)必須用真實(shí)計(jì)算機(jī)的代碼來(lái)實(shí)現(xiàn)這個(gè)核心過(guò)程,以X86匯編語(yǔ)言為例,其實(shí)現(xiàn)FORTH虛擬機(jī)核心過(guò)程的代碼為(16位地址空間):


ES:BX,SI MOV


SI,#2 ADD


ES:[BX]JMP


從代碼可以看出,它非常象一個(gè)子過(guò)程或函數(shù)的調(diào)用。在真實(shí)計(jì)算機(jī)中,函數(shù)是非常常用的一個(gè)功能,是若干指令的有序集合。


在FORTH中高級(jí)字就可認(rèn)為是“函數(shù)”。表3是真實(shí)計(jì)算機(jī)和FORTH在函數(shù)調(diào)用中的執(zhí)行過(guò)程對(duì)比。



6.結(jié)論


對(duì)于應(yīng)用來(lái)說(shuō),一個(gè)可擴(kuò)展性好、可移植性好、可裁剪、實(shí)現(xiàn)快速,并且便于調(diào)試的虛擬機(jī),能給應(yīng)用的開(kāi)發(fā)帶來(lái)極大的方便?;贔ORTH構(gòu)筑的虛擬機(jī),引入字典表完成指令和機(jī)器代碼的對(duì)應(yīng),并用字定義來(lái)完成指令的擴(kuò)展,使系統(tǒng)的結(jié)構(gòu)具有了極大的靈活性和擴(kuò)展性,僅僅通過(guò)對(duì)基本字的堆疊、組合就可完成高級(jí)字的層層定義,實(shí)現(xiàn)極其復(fù)雜的系統(tǒng)。在JLP FORTH中存儲(chǔ)分段使得程序指令和數(shù)據(jù)能相對(duì)獨(dú)立,有效地增強(qiáng)了系統(tǒng)的安全性。這些設(shè)計(jì)思路使得在其上構(gòu)建的FORTH虛擬機(jī)具有了代碼簡(jiǎn)單、調(diào)試方便、安全性高、擴(kuò)展性強(qiáng)等特點(diǎn),特別適合應(yīng)用于嵌入式系統(tǒng)中。

linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉