[发明专利]存储方法和装置有效
申请号: | 201210145239.9 | 申请日: | 2012-05-11 |
公开(公告)号: | CN102682112A | 公开(公告)日: | 2012-09-19 |
发明(设计)人: | 张淼 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 黄厚刚 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储 方法 装置 | ||
技术领域
本发明涉及计算机领域,特别涉及存储方法和装置。
背景技术
计算机技术领域,比特串包括0或者1。比特串可以用于表示网际协议(Internet Protocol,IP)地址。比特串也可以用于表示其他信息。可以使用树状拓扑对比特串进行存储。树状拓扑可以是二叉树、三叉树或者不规则树。
现有技术中,bitmap(位图)是一种存储数据结构的方法。bitmap的原理是在数据结构的标识域中使用0或1记录当前节点外部下挂的子节点的分布情况。标识域中的标记位用于表示该标记位对应的子节点是否是有效子节点。具体来说,标识位为0表示该标记位对应的子节点为无效子节点,标识位为1表示该标记位对应的子节点为有效子节点。
bitmap仅对当前节点的有效子节点进行存储,不对当前节点的无效子节点进行存储。当前节点的有效子节点的存储地址为基础地址与偏移量的和。偏移量与该子节点对应的标记位相关。举例来说,表1为一个标记域的示意图。如表1所示,当前节点外部下挂子节点的个数为16。
表1
按照从左到右并且从上到下的顺序,表1所示的标记域中的标记位分别为当前节点的第0、1至15个子节点的标记位。其中,第0个子节点的标记位为0,这表明该子节点为无效子节点。第1个子节点的标记位为1,这表明该子节点为有效子节点。从表1可以看出,当前节点的有效子节点包括第1、4、7、10以及15个子节点。
使用bitmap这一存储方式对数据结构进行存储时,在当前节点的子节点为无效子节点的情况下,需要在标记域中使用标记位0进行标识。浪费了存储空间。
发明内容
为了节省存储空间,本发明实施例提供了存储方法和装置。
一方面,本发明实施例提出了一种存储方法,包括:
将比特串中的第X+1片段按照第一规则进行存储,X为大于0并且小于N的整数,所述比特串由N个片段组成,所述N个片段中的第一片段至第N片段在所述比特串中按照从高比特到低比特的方向依次排列,N为大于2的整数,所述N个片段中每个片段包括0或者1,所述第一规则包括:
根据所述N个片段中的第X片段存储在第X数据结构的第一域中的位置确定第一偏移量,所述第X数据结构中存储了第一基础地址;
计算所述第一基础地址与所述第一偏移量的和,得到第一新地址,所述第一新地址对应的存储空间用于存储第X+1数据结构;
将所述第X+1片段存储到所述第X+1数据结构中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210145239.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:主机标识追溯方法及系统、终端、中心服务器
- 下一篇:地外星体浅层土壤取样装置