[发明专利]不规则指令解码的方法和装置在审
| 申请号: | 201410688392.5 | 申请日: | 2014-11-26 |
| 公开(公告)号: | CN104391677A | 公开(公告)日: | 2015-03-04 |
| 发明(设计)人: | 康烁 | 申请(专利权)人: | 康烁 |
| 主分类号: | G06F9/30 | 分类号: | G06F9/30 |
| 代理公司: | 北京恒都律师事务所 11395 | 代理人: | 李向东 |
| 地址: | 100084 北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 不规则 指令 解码 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,具体而言,特别涉及不规则指令解码的方法和装置。
背景技术
不规则指令是指处理器指令的操作数和操作码等信息在指令编码中的出现没有特定规律。因为不规则指令中操作数和操作码的位置不固定,没有规律可循,所以现有的技术都是添加很多的判断语句对指令的不同部分进行判断,以分辨某条指令的特征,这种方式导致软件代码逻辑很长,而且不能通用。
针对现有技术中不规则指令解码方法逻辑长、不能通用的上述问题,目前尚未提出有效的解决方法。
发明内容
本发明的主要目的在于提供一种不规则指令解码的方法和装置,以解决现有技术中不规则指令解码方法逻辑长、不能通用的问题。
依据本发明的一个方面,提供了一种不规则指令解码的方法。
在该不规则指令解码的方法中,预置一个指令特征集,该指令特征集包括多个不规则指令对应的特征数据结构,一个特征数据结构对应一个不规则指令,特征数据结构包括不规则指令的指令名称和描述不规则指令的指令特征,不规则指令解码的方法步骤具体包括:获取待解码的未知指令;将未知指令与指令特征集中的特征数据结构进行匹配;以及若未知指令与第一特征数据结构的指令特征完全匹配,则未知指令为第一特征数据结构对应的不规则指令,其中,第一特征数据结构为指令特征集中的一个特征数据结构。
进一步地,特征数据结构包括指令名称、指令特征的数量、每个指令特征的位置和每个指令特征的具体值。
进一步地,将未知指令与指令特征集中的每个特征数据结构进行匹配包括:步骤S1:匹配初始化,i置为1;步骤S2:将未知指令与指令特征集中的第i个特征数据结构进行匹配;步骤S3:若未知指令与第i个特征数据结构的指令特征完全匹配,则匹配结束,否则i=i+1,返回步骤S2。
进一步地,在步骤S2中,将未知指令与指令特征集中的第i个特征数据结构进行匹配包括:步骤S21:匹配初始化,获取第i个特征数据结构中的指令特征的数量,且匹配次数置为0;步骤S22:获取第i个特征数据结构中的一个指令特征的位置,得到第一位置,获取特征数据结构中第一位置对应的指令特征的具体值,得到第一值;步骤S23:获取未知指令在第一位置的具体值,得到第二值;步骤S24:匹配第一值与第二值,且将匹配次数加1,若第一值与第二值相同,则执行步骤S25,否则匹配结束且匹配失败;步骤S25:判断当前的匹配次数是否等于步骤S21中获取到的指令特征的数量,若不相等,则返回至步骤S22,否则匹配结束且匹配成功。
进一步地,指令特征集为数组。
依据本发明的另一个方面,提供了一种不规则指令解码的装置。
该不规则指令解码的装置包括:存储模块,用于存储预置的指令特征集,指令特征集包括多个不规则指令对应的特征数据结构,一个特征数据结构对应一个不规则指令,特征数据结构包括不规则指令的指令名称和描述不规则指令的指令特征;第一获取模块,用于获取待解码的未知指令;匹配模块,用于将未知指令与指令特征集中的特征数据结构进行匹配;以及确定模块,用于若未知指令与第一特征数据结构的指令特征完全匹配,则确定未知指令为第一特征数据结构对应的不规则指令,其中,第一特征数据结构为指令特征集中的一个特征数据结构。
进一步地,特征数据结构包括指令名称、指令特征的数量、每个指令特征的位置和每个指令特征的具体值。
进一步地,匹配模块用于执行以下步骤:步骤S1:匹配初始化,i置为1;步骤S2:将未知指令与指令特征集中的第i个特征数据结构进行匹配;步骤S3:若未知指令与第i个特征数据结构的指令特征完全匹配,则匹配结束,否则i=i+1,返回步骤S2。
进一步地,匹配模块在执行步骤S2时,具体包括执行以下步骤:步骤S21:匹配初始化,获取第i个特征数据结构中的指令特征的数量,且匹配次数置为0;步骤S22:获取第i个特征数据结构中的一个指令特征的位置,得到第一位置,获取特征数据结构中第一位置对应的指令特征的具体值,得到第一值;步骤S23:获取未知指令在第一位置的具体值,得到第二值;步骤S24:匹配第一值与第二值,且将匹配次数加1,若第一值与第二值相同,则执行步骤S25,否则匹配结束且匹配失败;步骤S25:判断当前的匹配次数是否等于步骤S21中获取到的指令特征的数量,若不相等,则返回至步骤S22,否则匹配结束且匹配成功。
进一步地,指令特征集为数组。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于康烁,未经康烁许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410688392.5/2.html,转载请声明来源钻瓜专利网。





