[發(fā)明專利]一種指令集模擬器譯碼模塊代碼的壓縮方法有效
| 申請(qǐng)?zhí)枺?/td> | 201910178129.4 | 申請(qǐng)日: | 2019-03-08 |
| 公開(公告)號(hào): | CN110007955B | 公開(公告)日: | 2020-12-15 |
| 發(fā)明(設(shè)計(jì))人: | 駱華鯤;蔡銘 | 申請(qǐng)(專利權(quán))人: | 浙江大學(xué) |
| 主分類號(hào): | G06F8/73 | 分類號(hào): | G06F8/73 |
| 代理公司: | 杭州求是專利事務(wù)所有限公司 33200 | 代理人: | 邱啟旺 |
| 地址: | 310058 浙江*** | 國(guó)省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 指令 模擬器 譯碼 模塊 代碼 壓縮 方法 | ||
1.一種指令集模擬器譯碼模塊代碼的壓縮方法,其特征在于,具體包括如下步驟:
(1)匯總指令集中所有指令的操作碼分布,并按操作碼長(zhǎng)度對(duì)操作碼分布作降序排序;將操作碼位置相同的操作碼分布劃分為同一小組,提取當(dāng)前操作碼長(zhǎng)度排名第一的小組;
(2)判斷當(dāng)前小組規(guī)模,若小組規(guī)模大于1,則對(duì)同組內(nèi)的所有操作碼分布做兩兩異或運(yùn)算,對(duì)所有異或結(jié)果做或運(yùn)算,匯總成組內(nèi)總差異結(jié)果,跳轉(zhuǎn)至步驟(3);若小組規(guī)模為1,則當(dāng)前小組已無法繼續(xù)拆分,為當(dāng)前操作碼分布生成相應(yīng)指令譯碼代碼,跳轉(zhuǎn)至步驟(4);
(3)從高至低位遍歷總差異結(jié)果,尋找第一位為1的位置,將其作為同組拆分節(jié)點(diǎn);根據(jù)拆分節(jié)點(diǎn)的0、1情況,將原小組拆分成兩個(gè)新小組;為兩個(gè)新小組拆分節(jié)點(diǎn)之前的操作碼段生成公共操作碼識(shí)別語句;將拆分節(jié)點(diǎn)為1的新小組入棧,提取拆分節(jié)點(diǎn)為0的新小組,跳轉(zhuǎn)至步驟(2);
(4)提取棧頂新小組,若提取新小組成功,則跳轉(zhuǎn)至步驟(2);若提取新小組失敗,則說明棧已空,跳轉(zhuǎn)至步驟(5);
(5)提取步驟(1)中當(dāng)前操作碼長(zhǎng)度排名第一的小組,若提取成功,則跳轉(zhuǎn)至步驟(2);若提取失敗,則說明步驟(1)已無剩余小組,指令集模擬器譯碼模塊代碼生成完畢,結(jié)束所有步驟;
所述步驟(1)具體為:用字符串記錄所有指令的操作碼分布,其中指令操作碼用0、1位表示,其他不確定位用x表示;0、1位個(gè)數(shù)即為指令操作碼長(zhǎng)度,按該長(zhǎng)度對(duì)所有指令的操作碼分布作降序排序;將x不確定位所在操作碼位置相同的分布合并至同一小組。
2.根據(jù)權(quán)利要求1所述的指令集模擬器譯碼模塊代碼的壓縮方法,其特征是,所述步驟(2)中,組內(nèi)分布做兩兩異或運(yùn)算時(shí),由于分布中存在x位,約定兩個(gè)x位做異或運(yùn)算時(shí),結(jié)果為0;對(duì)所有兩兩分布的異或結(jié)果做或運(yùn)算,匯總成組內(nèi)總差異結(jié)果。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于浙江大學(xué),未經(jīng)浙江大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910178129.4/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。





