本發(fā)明屬于虛擬處理器
技術領域:
,特別是涉及一種虛擬指令調用系統(tǒng)服務的方法及系統(tǒng)。
背景技術:
:指令是用戶實現(xiàn)功能的基本手段,用戶需要將自己功能實現(xiàn)用指令的形式傳遞給處理來完成功能,所以指令系統(tǒng)對于處理器來說是比不可少的。虛擬指令系統(tǒng)將系統(tǒng)服務函數(shù)封裝在應用程序內部,用戶通過設定指令來實現(xiàn)對于內部服務函數(shù)的使用。在軟件層次建立了虛擬處理器,來處理用戶所需要實現(xiàn)的各種功能,如頁面跳轉功能、通信需求等,這就需要建立指令系統(tǒng)供用戶使用。采用指令碼和指令服務函數(shù)的方式來實現(xiàn)的對于事件響應,不同的指令碼對應不同服務函數(shù)。虛擬處理器功能用于解析指令碼,并根據(jù)指令碼調用不同服務函數(shù),實現(xiàn)用戶設定功能。技術實現(xiàn)要素:本發(fā)明的目的在于提供一種虛擬指令調用系統(tǒng)服務的方法及系統(tǒng),通過建立通用的功能服務函數(shù),并設計虛擬指令,用戶通過虛擬指令來完成對于功能服務函數(shù)調用。為解決上述技術問題,本發(fā)明是通過以下技術方案實現(xiàn)的:本發(fā)明為一種虛擬指令調用系統(tǒng)服務的方法及系統(tǒng),包括用戶IDE端,用于對指令的設定;指令,用于虛擬指令列表;虛擬處理器,用于對指令的解析,并調用對應的服務函數(shù);服務函數(shù),為系統(tǒng)服務函數(shù)。優(yōu)選地,所述指令包括頁面跳轉指令、Tag操作指令、控制轉移指令和特殊指令。優(yōu)選地,所述特殊指令包括指令碼為RWDATA_CODE的指令和指令碼為SETTIMER_CODE的指令。一種虛擬指令調用系統(tǒng)服務的方法,包括如下步驟:步驟一,解析指令,通過虛擬處理器解析指令碼;步驟二,讀取參數(shù),通過虛擬處理器讀取參數(shù);步驟三,調用服務函數(shù),通過虛擬處理器調用服務函數(shù)。本發(fā)明的工作原理為:用戶根據(jù)指令和所需實現(xiàn)的頁面功能,進行指令設計,虛擬處理器將用戶設定的指令進行逐條處理,并根據(jù)不同的指令來調用響應的函數(shù)服務函數(shù)。用戶設定的指令傳遞給虛擬處理器,虛擬處理器進行指令解析,根據(jù)不同指令長度,獲取對應參數(shù),根據(jù)指令碼和參數(shù),調用對應服務函數(shù)來實現(xiàn)功能。本發(fā)明具有以下有益效果:1、本發(fā)明通過將通用的服務函數(shù)功能封裝在應用程序內部,并建立簡單虛擬指令結構,用戶使用服務函數(shù)時并不需要知道具體函數(shù)實現(xiàn)和函數(shù)接口,只需要使用相應的指令來實現(xiàn)對于服務函數(shù)調用,使用起來更加便捷。2、本發(fā)明通過設定的虛擬指令都帶有的參數(shù),用于傳遞給服務函數(shù),多條指令碼組合使用,使得指令系統(tǒng)使用更加靈活多變,可擴展性更強。當然,實施本發(fā)明的任一產(chǎn)品并不一定需要同時達到以上所述的所有優(yōu)點。附圖說明為了更清楚地說明本發(fā)明實施例的技術方案,下面將對實施例描述所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明的一種虛擬指令調用系統(tǒng)服務的系統(tǒng);圖2為本發(fā)明的一種虛擬指令調用系統(tǒng)服務的方法。具體實施方式下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。請參閱圖1所示,本發(fā)明為一種虛擬指令調用系統(tǒng)服務的系統(tǒng),包括用戶IDE端,用于對指令的設定;指令,用于虛擬指令列表;虛擬處理器,用于對指令的解析,并調用對應的服務函數(shù);服務函數(shù),為系統(tǒng)服務函數(shù)。其中,指令包括頁面跳轉指令、Tag操作指令、控制轉移指令和特殊指令。其中,頁面跳轉指令主要來完成頁面跳轉和頁面返回GOTO_CODE指令是一個帶參數(shù)指令,參數(shù)長度為8位,即大小為0至255,這是可以跳轉頁數(shù)范圍。RET_CODE指令是無參數(shù)指令,用于返回前一頁。GOTO_CODE指令和RET指令是相關聯(lián)的。RET_CODE指令返回頁數(shù)需要從特定系統(tǒng)堆棧中讀取,當執(zhí)行GOTO_CODE指令時,會將當前頁面編號壓入堆棧中。堆棧采用先進后出原則,符合頁面跳轉和頁面返回的邏輯要求。該類指令如表1所示。指令碼指令描述指令長度(字節(jié))GOTO_CODE跳轉到對應頁面2RET_CODE返回之前頁面1表1頁面跳轉指令其中,Tag操作指令中,Tag是AHMI獨有的一種數(shù)據(jù)類型,Tag操作指令就是需要實現(xiàn)對于Tag數(shù)據(jù)操作。指令結構為指令碼、目的、源。指令碼占用一個字節(jié);第一個參數(shù)為目的Tag的ID號占用,一個字節(jié);第二個參數(shù)為源,當源為Tag時,占用一個字節(jié),為Tag的ID,若源為常數(shù),占用四個字節(jié)。(其中NOT_CODE指令為去翻操作,沒有源參數(shù)項)指令詳細如表2所示。表2Tag操作指令其中,控制轉移指令用于控制指令流向,根據(jù)條件改變指令執(zhí)行順序??刂妻D移指令結構分為指令碼、目的、源。指令碼占用一個字節(jié);目的為Tag的ID占用一個字節(jié);源為Tag或者為常數(shù),若源為Tag,則占用一個字節(jié),為Tag的ID,若源為常數(shù),則占用4個字節(jié)。對于JUMP_CODE指令參數(shù)結構較為特殊,只有一個字節(jié)常數(shù)參數(shù),表示跳轉指令條數(shù)。指令詳細如表3所示。表3控制轉移指令其中,特殊指令包括指令碼為RWDATA_CODE的指令和指令碼為SETTIMER_CODE的指令。RWDATA_CODE指令長度為5個字節(jié),指令碼占用一個字節(jié),參數(shù)占用四個字節(jié),低8位為讀寫寄存器數(shù)目,第8位至第23位兩個字節(jié)表示讀寫寄存器起始地址,第24位至第27位為讀寫類型,1表示寫,2表示讀。SETTIMER_CODE指令為設置定時器參數(shù),由兩個參數(shù)組成,參數(shù)1表示定時器參數(shù),占用一個字節(jié),參數(shù)為數(shù)值,占用四個字節(jié)。見表格4.指令碼指令描述指令長度RWDATA_CODE讀寫寄存器數(shù)值5SETTIMER_CODE設置定時器參數(shù)數(shù)值6表4特殊指令請參閱圖2所示,一種虛擬指令調用系統(tǒng)服務的方法,包括如下步驟:步驟一,解析指令,通過虛擬處理器解析指令碼;步驟二,讀取參數(shù),通過虛擬處理器讀取參數(shù);步驟三,調用服務函數(shù),通過虛擬處理器調用服務函數(shù)。本發(fā)明的工作原理為:用戶根據(jù)指令和所需實現(xiàn)的頁面功能,進行指令設計,虛擬處理器將用戶設定的指令進行逐條處理,并根據(jù)不同的指令來調用響應的函數(shù)服務函數(shù)。用戶設定的指令傳遞給虛擬處理器,虛擬處理器進行指令解析,根據(jù)不同指令長度,獲取對應參數(shù),根據(jù)指令碼和參數(shù),調用對應服務函數(shù)來實現(xiàn)功能。采用簡單虛擬指令來完成對于服務函數(shù)調用,用戶使用更加簡單方便,并且服務功能函數(shù)完全與用戶分離,使得系統(tǒng)更加安全可靠。指令種類多樣化,并且加入了控制轉移類指令,使得指令組合使用更加靈活。在虛擬器指令結構框架中,指令可以升級和增加新的功能函數(shù),不局限于上文所述指令,通過虛擬指令調用系統(tǒng)服務的框架。值得注意的是,上述系統(tǒng)實施例中,所包括的各個單元只是按照功能邏輯進行劃分的,但并不局限于上述的劃分,只要能夠實現(xiàn)相應的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本發(fā)明的保護范圍。另外,本領域普通技術人員可以理解實現(xiàn)上述各實施例方法中的全部或部分步驟是可以通過程序來指令相關的硬件來完成,相應的程序可以存儲于一計算機可讀取存儲介質中,所述的存儲介質,如ROM/RAM、磁盤或光盤等。以上公開的本發(fā)明優(yōu)選實施例只是用于幫助闡述本發(fā)明。優(yōu)選實施例并沒有詳盡敘述所有的細節(jié),也不限制該發(fā)明僅為所述的具體實施方式。顯然,根據(jù)本說明書的內容,可作很多的修改和變化。本說明書選取并具體描述這些實施例,是為了更好地解釋本發(fā)明的原理和實際應用,從而使所屬
技術領域:
技術人員能很好地理解和利用本發(fā)明。本發(fā)明僅受權利要求書及其全部范圍和等效物的限制。當前第1頁1 2 3