数据压缩装置及方法、数据解压装置及方法制造方法及图纸

技术编号:24214953 阅读:65 留言:0更新日期:2020-05-20 18:39
本发明专利技术提出一种数据压缩方法,包括:将原位码转换为原位编码:对长度为N个BIT单位的二进制数据W,以M个BIT单位进行编码,M为大于等于2的自然数;对原位编码进行单向循环一步处理,并将单向循环一步处理后的原位编码转换为原位记录码和原位进位码:将原位编码视为一个数串;将原位记录码转换为记录编码,对记录编码进行进位处理,生成一个解码参数;并将记录进位码串接在原位进位码的前面,生成组合进位码;判断当前的组合进位码是否小于等于设定的理想剩余值,不是的话,将当前的组合进位码做为新的原位编码,进行循环处理;是的话,退出循环。实施本发明专利技术实施例,可达到压缩数据的目的,能够大大提升无损压缩的效率。

Data compression device and method, data decompression device and method

【技术实现步骤摘要】
数据压缩装置及方法、数据解压装置及方法
本专利技术涉及二进制数据的处理,尤其涉及二进制数据的压缩。
技术介绍
随着信息时代的发展,数据量呈爆发式增长。除了硬件技术遵循摩尔定律快速更新迭代应对外,软件技术也是解决方案之一,尤其是数据压缩技术,最直接有效地减少信息数据的体量,不仅节省存储空间和传输时间,而且相对于硬件更经济更安全、可靠。现在使用的数据无损压缩算法,主要有两大类:1、熵编码类,如:霍夫曼编码,算术编码等;2、字典编码类,如:RLE编码,LZ编码等。它们基于不同的理念,设计出不同的算法,针对不同类型的数据,产生不同的压缩效果,但它们的共同点:都是把数据看作信息的载体,减少信息的冗余度,用最少BIT单位承载原数据信息内容,以达到压缩数据的目的,所以它们都受到了信息熵理论的限制,无损压缩比一般都在2:1到5:1的范围内,可压缩空间非常有限。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提出一种数据压缩方法,能够大大提升无损压缩的效率。本专利技术解决其技术问题所采用的技术方案包括:提供一种数据压缩方法,包括以下步骤:将原位码转换为原位编码:对长度为N个BIT单位的二进制数据W,以M个BIT单位进行编码,M为大于等于2的自然数;对原位编码进行单向循环一步处理,并将单向循环一步处理后的原位编码转换为原位记录码和原位进位码:将原位编码视为一个数串,所述的单向循环一步处理,相当于让整个数串中的每个单元单向循环一步;将原位记录码转换为记录编码,对记录编码进行进位处理,生成一个解码参数;并将记录进位码串接在原位进位码的前面,生成组合进位码;判断当前的组合进位码是否小于等于设定的理想剩余值,不是的话,将当前的组合进位码做为新的原位编码,返回到对原位编码进行单向循环一步处理,进行循环处理;是的话,退出循环。在一些实施例中,所述的原位记录码,是按照原位码中的单个编码是否为循环终止码,对应地以逻辑代码“0”和“1”分别进行记录而得到的二进制串;所述的原位进位码,是原位码中的单个不是循环终止码的编码均单方向循环一步后所对应的编码儿得到的M个BIT单位的编码串。在一些实施例中,在将记录进位码串接在原位进位码的前面,生成组合进位码时,若在组合进位码的尾巴为循环终止码时,将这循环终止码予以丢弃。在一些实施例中,所述的循环终止码可以指定为M个BIT编码中的任意一个编码,作为进位或者退位循环的一个终止位置指示。在一些实施例中,所述的单向循环一步是指加1的进位循环或者减1的退位循环。本专利技术解决其技术问题所采用的技术方案还包括:提供一种计算设备,其包括:处理器、存储器和总线;该存储器通过该总线连接该处理器,该处理器被配置为执行存储器中存储的指令;该处理器通过执行所述存储器的指令实现前述的数据压缩方法。本专利技术解决其技术问题所采用的技术方案还包括:提供一种数据压缩装置,用于计算设备,其包括:第一单元,用于将原位码转换为原位编码:对长度为N个BIT单位的二进制数据W,以M个BIT单位进行编码,M为大于等于2的自然数;第二单元,用于对原位编码进行单向循环一步处理,并将单向循环一步处理后的原位编码转换为原位记录码和原位进位码:将原位编码视为一个数串,所述的单向循环一步处理,相当于让整个数串中的每个单元单向循环一步;第三单元,用于将原位记录码转换为记录编码,对记录编码进行进位处理,生成一个解码参数;并将记录进位码串接在原位进位码的前面,生成组合进位码;第四单元,用于判断当前的组合进位码是否小于等于设定的理想剩余值,不是的话,将当前的组合进位码做为新的原位编码,返回到对原位编码进行单向循环一步处理(也即返回到第二单元),进行循环处理;是的话,退出循环。本专利技术解决其技术问题所采用的技术方案还包括:提供一种数据解压方法,其包括以下步骤:按第n个解码参数Cn的数,将第n次计算后得到的组合进位码Qn的头部分离出来的记录进位码,进行单方向循环一步处理;将M个BIT编码转为1个BIT的记录代码,如果有余码,将余码添加在尾端;记录代码与组合进位码Qn分离出来的原位进位码相对应,进行单方向循环一步处理,如果对应不到,默认为循环终止码,得到当前的组合进位码Qn-1;判断当前的组合进位码Qn-1是否根据第一个解码参数C1运算得到,不是的话,将当前的组合进位码Qn-1作为当前要参加运算的组合进位码Qn;提取解码参数Cn-1作为当前要参加运算的解码参数Cn,返回到按第n个解码参数Cn的数,将第n次计算后得到的组合进位码Qn的头部分离出来的记录进位码,进行单方向循环一步处理,进行循环处理;是的话,退出循环。本专利技术解决其技术问题所采用的技术方案还包括:提供一种计算设备,其包括:处理器、存储器和总线;该存储器通过该总线连接该处理器,该处理器被配置为执行存储器中存储的指令;该处理器通过执行所述存储器的指令实现前述的数据解压方法。本专利技术解决其技术问题所采用的技术方案还包括:提供一种数据解压装置,用于计算设备,其包括:第一单元,用于按第n个解码参数Cn的数,将第n次计算后得到的组合进位码Qn的头部分离出来的记录进位码,进行单方向循环一步处理;第二单元,用于将M个BIT编码转为1个BIT的记录代码,如果有余码,将余码添加在尾端;第三单元,用于记录代码与组合进位码Qn分离出来的原位进位码相对应,进行单方向循环一步处理,如果对应不到,默认为循环终止码,得到当前的组合进位码Qn-1;第四单元,用于判断当前的组合进位码Qn-1是否根据第一个解码参数C1运算得到,不是的话,将当前的组合进位码Qn-1当前要参加运算的组合进位码Qn;提取解码参数Cn-1作为当前要参加运算的解码参数Cn,返回到按第n个解码参数Cn的数,将第n次计算后得到的组合进位码Qn的头部分离出来的记录进位码,进行单方向循环一步处理(也即返回到第一单元),进行循环处理;是的话,退出循环。与现有技术相比,本专利技术的数据压缩方法,通过将二进制的数据视为一个十进制的大整数,经过简单的运算处理,表述为若干个解码参数和一个组合进位码,可以大大提升无损压缩的效率,尤其针对存储量在上GBIT的大数据。附图说明图1示意出本专利技术的数学二叉树的模型的结构。图2示意出本专利技术的数据压缩方法的流程。图3示意出本专利技术的数据解压方法的流程。图4示意出本专利技术的计算设备的结构框图。图5示意出本专利技术的数据压缩装置的框图。图6示意出本专利技术的数据解压装置的框图。具体实施方式为了详细说明本专利技术的构造及特点所在,兹举以下较佳实施例并配合附图说明如下。本专利技术提出一种新的数据压缩方法理念,将数据(二进制串)整体看成一个十进制的大整数,因为所有二进制数据都可以计算出一个十进制的整数。如何简化表达这个大整数,以达到压缩数据的效果,这是一个纯数学问题,与该数据承载的信息内容无关。本专利技术本文档来自技高网...

【技术保护点】
1.一种数据压缩方法,其特征在于,包括以下步骤:/n将原位码转换为原位编码:对长度为N个BIT单位的二进制数据W,以M个BIT单位进行编码,M为大于等于2的自然数;/n对原位编码进行单向循环一步处理,并将单向循环一步处理后的原位编码转换为原位记录码和原位进位码:将原位编码视为一个数串,所述的单向循环一步处理,相当于让整个数串中的每个单元单向循环一步;/n将原位记录码转换为记录编码,对记录编码进行进位处理,生成一个解码参数;并将记录进位码串接在原位进位码的前面,生成组合进位码;/n判断当前的组合进位码是否小于等于设定的理想剩余值,不是的话,将当前的组合进位码做为新的原位编码,返回到对原位编码进行单向循环一步处理,进行循环处理;是的话,退出循环。/n

【技术特征摘要】
1.一种数据压缩方法,其特征在于,包括以下步骤:
将原位码转换为原位编码:对长度为N个BIT单位的二进制数据W,以M个BIT单位进行编码,M为大于等于2的自然数;
对原位编码进行单向循环一步处理,并将单向循环一步处理后的原位编码转换为原位记录码和原位进位码:将原位编码视为一个数串,所述的单向循环一步处理,相当于让整个数串中的每个单元单向循环一步;
将原位记录码转换为记录编码,对记录编码进行进位处理,生成一个解码参数;并将记录进位码串接在原位进位码的前面,生成组合进位码;
判断当前的组合进位码是否小于等于设定的理想剩余值,不是的话,将当前的组合进位码做为新的原位编码,返回到对原位编码进行单向循环一步处理,进行循环处理;是的话,退出循环。


2.根据权利要求1所述的数据压缩方法,其特征在于,所述的原位记录码,是按照原位码中的单个编码是否为循环终止码,对应地以逻辑代码“0”和“1”分别进行记录而得到的二进制串;所述的原位进位码,是原位码中的单个不是循环终止码的编码均单方向循环一步后所对应的编码得到的M个BIT单位的编码串。


3.根据权利要求1所述的数据压缩方法,其特征在于,在将记录进位码串接在原位进位码的前面,生成组合进位码时,若在组合进位码的尾巴为循环终止码时,将这循环终止码予以丢弃。


4.根据权利要求1所述的数据压缩方法,其特征在于,所述的循环终止码可以指定为M个BIT编码中的任意一个编码,作为进位或者退位循环的一个终止位置指示。


5.根据权利要求1所述的数据压缩方法,其特征在于,所述的单向循环一步是指加1的进位循环或者减1的退位循环。


6.一种计算设备,其特征在于,包括:处理器、存储器和总线;该存储器通过该总线连接该处理器,该处理器被配置为执行存储器中存储的指令;该处理器通过执行所述存储器的指令实现权利要求1至5任一所述的数据压缩方法。


7.一种数据压缩装置,用于计算设备,其特征在于,包括:
第一单元,用于将原位码转换为原位编码:对长度为N个BIT单位的二进制数据W,以M个BIT单位进行编码,M为大于等于2的自然数;
第二单元,用于对原位编码进行单向循环一步处理,并将单向循环一步处理后的原位编码转换为原位记录码和原位进位码:将原位编码视为一个数串,所述的单向循环一步处理,相当于让整个数串中的每个单元单向循环一步;
第三单元,...

【专利技术属性】
技术研发人员:刘必明
申请(专利权)人:深圳花果公社商业服务有限公司
类型:发明
国别省市:广东;44

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1