[发明专利]一种函数地址的获取方法以及电子设备有效
申请号: | 201610991507.7 | 申请日: | 2016-11-10 |
公开(公告)号: | CN106776464B | 公开(公告)日: | 2020-03-10 |
发明(设计)人: | 维克多·吉辛;周智 | 申请(专利权)人: | 杭州华为数字技术有限公司 |
主分类号: | G06F15/78 | 分类号: | G06F15/78;G06F12/1009 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 吴磊 |
地址: | 310052 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 函数 地址 获取 方法 以及 电子设备 | ||
1.一种函数地址的获取方法,其特征在于,包括:
根据跳转表获取目标函数的目标槽位号,所述跳转表用于索引跳转表段,所述跳转表段包括多个函数,所述目标函数为所述多个函数中的任一函数,所述跳转表段还包括多个槽位以及与所述多个槽位中的任一槽位对应的槽位号,所述目标槽位号为与目标槽位对应的槽位号,所述目标槽位为所述目标函数的首地址所位于的槽位;
根据所述目标槽位号获取目标函数地址,所述目标函数地址为所述目标函数位于所述跳转表段中的首地址。
2.根据权利要求1所述的方法,其特征在于,所述根据跳转表获取目标函数的目标槽位号之前,所述方法还包括:
创建所述跳转表段,所述跳转表段包括多个大小相等的槽位,且各所述槽位的大小为预设比特值,所述预设比特值大于或等于所述多个函数中任一函数的对齐粒度;
对各所述槽位进行标号,以获取与所述跳转表段所包括的所述多个大小相等的槽位中的任一槽位对应的槽位号。
3.根据权利要求1或2所述方法,其特征在于,所述根据跳转表获取目标函数的目标槽位号之前,所述方法还包括:
根据所述跳转表段创建所述跳转表,所述跳转表包括多个子表项和多个参数,所述多个参数中包括与所述目标函数对应的目标参数,与所述目标参数对应的目标子表项用于设置所述目标槽位号。
4.根据权利要求3所述方法,其特征在于,所述根据跳转表获取目标函数的目标槽位号包括:
读取跳转表的首地址;
获取所述目标子表项的目标比特数,所述目标比特数为创建所述目标子表项所需的比特数;
根据第一公式计算所述目标槽位号,其中,所述第一公式为:
所述目标槽位号=所述跳转表的首地址+目标参数*所述目标比特数。
5.根据权利要求4所述的方法,其特征在于,所述获取所述目标子表项的目标比特数包括:
根据第二公式计算所述目标比特数,其中,所述第二公式为:
其中,Q为所述目标比特数,roundup为向上取整函数,N为所述跳转表段所包括的函数的数目,handler-sizei为所述目标函数的大小,所述目标函数为N个所述函数中的第i个函数,i为小于或等于N的正整数,size-of-slot为所述槽位的大小。
6.根据权利要求4或5所述的方法,其特征在于,所述跳转表段包括多个大小相等的槽位,所述根据所述目标槽位号获取目标函数地址包括:
读取跳转表段的首地址;
根据第三公式计算所述目标函数地址,其中,所述第三公式为:
所述目标函数地址=所述跳转表段的首地址+所述目标槽位号*所述槽位的大小。
7.一种电子设备,其特征在于,包括:
第一获取单元,用于根据跳转表获取目标函数的目标槽位号,所述跳转表用于索引跳转表段,所述跳转表段包括多个函数,所述目标函数为所述多个函数中的任一函数,所述跳转表段还包括多个槽位以及与所述多个槽位中的任一槽位对应的槽位号,所述目标槽位号为与目标槽位对应的槽位号,所述目标槽位为所述目标函数的首地址所位于的槽位;
第二获取单元,用于根据所述目标槽位号获取目标函数地址,所述目标函数地址为所述目标函数位于所述跳转表段中的首地址。
8.根据权利要求7所述的电子设备,其特征在于,所述电子设备还包括:
第一创建单元,用于创建所述跳转表段,所述跳转表段包括多个大小相等的槽位,且各所述槽位的大小为预设比特值,所述预设比特值大于或等于所述多个函数中任一函数的对齐粒度;
第三获取单元,用于对各所述槽位进行标号,以获取与所述跳转表段所包括的所述多个大小相等的槽位中的任一槽位对应的槽位号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华为数字技术有限公司,未经杭州华为数字技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610991507.7/1.html,转载请声明来源钻瓜专利网。