CN103078646A - 字典查询压缩、解压缩方法及其装置 - Google Patents

字典查询压缩、解压缩方法及其装置 Download PDF

Info

Publication number
CN103078646A
CN103078646A CN201210592500XA CN201210592500A CN103078646A CN 103078646 A CN103078646 A CN 103078646A CN 201210592500X A CN201210592500X A CN 201210592500XA CN 201210592500 A CN201210592500 A CN 201210592500A CN 103078646 A CN103078646 A CN 103078646A
Authority
CN
China
Prior art keywords
byte
flag byte
compression
coupling
flag
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201210592500XA
Other languages
English (en)
Other versions
CN103078646B (zh
Inventor
黄寅
蒋玉东
胡健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHANGHAI YUXIN TECHNOLOGY Co Ltd
Original Assignee
SHANGHAI YUXIN TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHANGHAI YUXIN TECHNOLOGY Co Ltd filed Critical SHANGHAI YUXIN TECHNOLOGY Co Ltd
Priority to CN201210592500.XA priority Critical patent/CN103078646B/zh
Publication of CN103078646A publication Critical patent/CN103078646A/zh
Application granted granted Critical
Publication of CN103078646B publication Critical patent/CN103078646B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明涉及通信领域,公开了一种字典查询压缩、解压缩方法及其装置,在本发明中,对于压缩过程中匹配与否的情况,仅用第一标志字节中的一比特区分,同时充分利用标志字节的其余比特表达匹配(或原文)长度,匹配时另有标志字节表达匹配位移,杜绝空间浪费,极大地提高了压缩效率,进一步地,对于匹配位移的计算,采取以二的整数次幂为基本单位构成地址块,减少大量地址加减计算,利用本发明的方法与装置可以大幅减少存储空间,节省带宽,简化硬件设计,提高压缩比。

Description

字典查询压缩、解压缩方法及其装置
技术领域
本发明涉及通信领域,特别涉及字典查询压缩及解压缩技术。
背景技术
出于带宽和存储空间的限制,或节省成本的考虑,压缩技术在信息处理中有广泛应用。压缩通常分为有损与无损两大类,前者常用于图像、视频、声音等领域,解压后结果无法恢复到压缩前,但有较高的压缩比;后者常用于代码,文本等,解压后可以完全复原,但压缩比偏低。
字典查询压缩(LZ77)是一种无损压缩方法,基本原理如图1所示,其核心思想是保留最近已编码的原文作为滑动窗口,即将要编码的原文作为前瞻窗口。在滑动窗口中搜索尽可能长的与前瞻窗口重合的部分(即相匹配的部分),并输出其在滑动窗口中的位置和长度,作为新编码,并更新滑动窗口与前瞻窗口。如无匹配,另以匹配长度为0及该字符编码。
比如说,图1(a)中,滑动窗口长度为20字节,前瞻窗口长度为8字节。黑体部分为搜索到的最长匹配字符串,起始位置为6,长度为5,编码后如图1(b)所示。编码完成后新滑动窗口与前瞻窗口如图1(c)。然后没有搜索到重合部分,只能编码为(C,0)。其中C代表原文,0代表匹配长度为0。
分析以上编码过程可知,在未匹配时,效率降到原文的50%,这是难以接受的;而且匹配成功时,起始位置(即偏移)随编码位置不断移动,有大量的加减计算,增加硬件负担。
发明内容
本发明的目的在于提供一种字典查询压缩、解压缩方法及其装置,以极大地提高压缩比,并且简化硬件结构,以低成本获得高表现。
为解决上述技术问题,本发明的实施方式提供了一种字典查询压缩方法,包含以下步骤:
将最近已编码的N个字节作为滑动窗口,将即将要编码的L个字节作为前瞻窗口;其中,所述N为滑动窗口包含的字节数,所述L为前瞻窗口包含的字节数;
在所述滑动窗口中搜索尽可能长的与所述前瞻窗口匹配的部分;
如果在所述滑动窗口中搜索到与所述前瞻窗口匹配的部分,则采用第一标志字节和第二标志字节表示匹配结果、匹配长度与匹配起始位置;其中,所述第一标志字节中的一个固定比特位用于指示所述滑动窗口与所述前瞻窗口匹配,所述第一标志字节中的其余比特用于指示匹配的长度;所述第二标志字节用于指示匹配起始位置;
如果在所述滑动窗口中未搜索到与所述前瞻窗口匹配的部分,则采用所述第一标志字节表示匹配结果与将跟随的原文长度;其中,所述第一标志字节中的所述固定比特位用于指示所述滑动窗口与所述前瞻窗口不匹配,所述第一标志字节中的其余比特用于指示将跟随的原文长度。
本发明的实施方式还提供了一种字典查询解压缩方法,对应于上述的字典查询压缩方法,包含以下步骤:
解析所述第一标志字节中的所述固定比特位;
根据所述固定比特位指示的匹配结果,恢复压缩之前的原文;
其中,如果所述固定比特位指示匹配,则根据所述第一标志字节中其余比特指示的匹配长度与所述第二标志字节指示的匹配起始位置,恢复压缩之前的原文;如果所述固定比特位指示不匹配,则根据所述第一标志字节中其余比特指示的原文长度,恢复压缩之前的原文。
本发明的实施方式还提供了一种字典查询压缩装置,包含:
匹配搜索单元,用于在滑动窗口中搜索尽可能长的与前瞻窗口匹配的部分;其中,所述将最近已编码的N个字节作为滑动窗口,将即将要编码的L个字节作为前瞻窗口,所述N为滑动窗口包含的字节数,所述L为前瞻窗口包含的字节数;
判断单元,用于判断所述匹配搜索单元是否在所述滑动窗口中搜索到与所述前瞻窗口匹配的部分;
编码单元,用于在所述判断单元判定搜索到与所述前瞻窗口匹配的部分时,采用第一标志字节和第二标志字节表示匹配结果、匹配长度与匹配起始位置;其中,所述第一标志字节中的一个固定比特位用于指示所述滑动窗口与所述前瞻窗口匹配,所述第一标志字节中的其余比特用于指示匹配的长度;所述第二标志字节用于指示匹配起始位置;并在所述判断单元判定未搜索到与所述前瞻窗口匹配的部分时,采用所述第一标志字节表示匹配结果与将跟随的原文长度;其中,所述第一标志字节中的所述固定比特位用于指示所述滑动窗口与所述前瞻窗口不匹配,所述第一标志字节中的其余比特用于指示将跟随的原文长度。
本发明的实施方式还提供了一种字典查询解压缩装置,对应于上述的字典查询压缩装置,包含:
匹配结果分析单元,用于解析所述第一标志字节中的所述固定比特位;
解码单元,用于根据所述固定比特位指示的匹配结果,恢复压缩之前的原文;
其中,所述解码单元在所述固定比特位指示匹配时,根据所述第一标志字节中其余比特指示的匹配长度与所述第二标志字节指示的匹配起始位置,恢复压缩之前的原文;在所述固定比特位指示不匹配时,根据所述第一标志字节中其余比特指示的原文长度,恢复压缩之前的原文。
本发明实施方式相对于现有技术而言,保存最近一段原文作为滑动窗口,根据匹配结果,每个压缩字段表达为第一标志字节和原文,或第一标志字节和用于指示匹配地址的第二标志字节。由于仅用1比特区分是否在滑动窗口中搜索到与前瞻窗口匹配的部分,同时充分利用第一标志字节的其余比特表达匹配(或原文)长度,匹配时另有第二标志字节表达匹配位移,未匹配时,该第二标志字节不存在,后续内容为原文。因此在不匹配时,也无需用一个字节表示,杜绝空间浪费,极大地提高了压缩效率,减少了存储空间,并且由于始终以第一标志字节中的固定比特位指示匹配结果,简化了硬件结构,能以低成本获得高表现。
优选地,第一标志字节中的所述固定比特位为该第一标志字节中的最高比特位。采用第一标志字节中的最高位比特指示匹配结果,其余的低7位比特指示匹配的长度或原文,实现简单,进一步简化了硬件结构。
优选地,在采用第一标志字节和第二标志字节表示匹配结果、匹配长度与匹配起始位置时,将第一标志字节中的其余比特设置为表示实际匹配字节数-1的数值;在采用第一标志字节表示匹配结果与将跟随的原文长度时,将第一标志字节中的其余比特设置为表示实际将跟随的原文的字节数-1的数值。由于长度无论匹配与否都至少为1,因此编码等于实际长度-1,进一步充分利用了表达空间。
优选地,滑动窗口包含的字节数为256。由于第一标志字节的长度为8比特,能表达的范围是0到255,故滑动窗口大小为256,可以被匹配位移的字节全覆盖。
优选地,在进行相应的解压缩时,将最近已解码的256个字节作为解码滑动窗口,以所述解码滑动窗口的起点作为所述匹配起始位置的基点,取出所述匹配起始位置起的符合匹配长度的字节数。由于对于匹配位移的计算,以二的整数次幂为基本单位构成地址块,以每个地址块的起点作为位移基点,匹配时,直接从滑动窗口中取数即可,大量地减少了地址加减计算。
附图说明
图1是根据现有技术中的字典查询压缩方法的原理示意图;
图2是根据本发明第一实施方式的字典查询压缩方法流程图;
图3是根据本发明第一实施方式中的第一、第二标志字节的结构示意图;
图4是根据本发明第二实施方式的字典查询解压缩方法流程图;
图5是根据本发明第二实施方式中的原文以256字节为地址块的示意图;
图6是根据现有技术中的匹配位移计算示意图;
图7是根据本发明第二实施方式中保存的解码滑动窗口的示意图;
图8是根据本发明第二实施方式中的匹配位移计算示意图;
图9是根据本发明第三实施方式的字典查询压缩装置结构示意图;
图10是根据本发明第四实施方式的字典查询解压缩装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
本发明的第一实施方式涉及一种字典查询压缩方法。在本实施方式中,将最近已编码的N个字节作为滑动窗口,将即将要编码的L个字节作为前瞻窗口;其中,所述N为滑动窗口包含的字节数,所述L为前瞻窗口包含的字节数。
具体流程如图2所示,在步骤210中,在滑动窗口中搜索尽可能长的与前瞻窗口匹配的部分,本步骤与现有技术相同,在此不再赘述。
接着,在步骤220中,判断在滑动窗口中是否搜索到与前瞻窗口匹配的部分。如果搜索到与前瞻窗口匹配的部分,则进入步骤230;如果未搜索到与前瞻窗口匹配的部分,则进入步骤240。
在步骤230中,采用第一标志字节和第二标志字节表示匹配结果、匹配长度与匹配起始位置。其中,第一标志字节中的一个固定比特位用于指示滑动窗口与所述前瞻窗口匹配,第一标志字节中的其余比特用于指示匹配的长度;第二标志字节用于指示匹配起始位置。
具体地说,如图3所示,将第一标志字节中的最高比特位(比特位7)作为用于指示匹配结果的固定比特位,如将第一标志字节中的比特位7设置为1,表示匹配。将第一标志字节中的其余比特位(比特位0至6)指示匹配的长度。由于考虑到长度无论匹配与否都至少为1,编码等于实际长度-1,因此,在本实施方式中,将第一标志字节中的比特位0至6设置为表示实际匹配字节数-1的数值。第二标志字节仅在匹配时存在,代表匹配字符串在滑动窗口的位置。在本实施方式中,滑动窗口包含的字节数为256。由于第一标志字节的长度为8比特,能表达的范围是0到255,故滑动窗口大小为256,可以被匹配位移的字节全覆盖。
在步骤240中,在未搜索到与前瞻窗口匹配的部分时,采用第一标志字节表示匹配结果与将跟随的原文长度。其中,第一标志字节中的固定比特位用于指示滑动窗口与所述前瞻窗口不匹配,如将第一标志字节中的最高比特位设置为0,表示之后为原文。第一标志字节中的其余比特用于指示将跟随的原文长度。与步骤230类似,将第一标志字节中的其余比特设置为表示实际将跟随的原文的字节数-1的数值,以充分利用表达空间。
在步骤230或步骤240之后,进入步骤250,判断编码是否已结束,如果已编码结束,则结束流程,如果还存在需编码的内容,则进入步骤260,更新滑动窗口和前瞻窗口,并回到步骤210。
本领域技术人员可以理解,在现有技术中,在未匹配时,用整个编码单位(通常为字节)等于零表达,浪费极大,其实仅用1比特即可。因此,在本实施方式中,将第一标志字节分为2部分,最高比特区分匹配与否,其余比特表达长度(未匹配时则代表跟随的原文长度);匹配时,紧跟的第二标志字节表达匹配位置,即偏移;如不匹配,第二标志字节不存在,紧跟的即是原文。由于仅用1比特区分是否在滑动窗口中搜索到与前瞻窗口匹配的部分,同时充分利用第一标志字节的其余比特表达匹配(或原文)长度,匹配时另有第二标志字节表达匹配位移,未匹配时,该第二标志字节不存在,后续内容为原文。因此在不匹配时,也无需用一个字节表示,杜绝空间浪费,极大地提高了压缩效率,减少了存储空间,并且由于始终以第一标志字节中的固定比特位指示匹配结果,简化了硬件结构,能以低成本获得高表现。
而且,采用第一标志字节中的最高位比特指示匹配结果,其余的低7位比特指示匹配的长度或原文,实现简单,进一步简化了硬件结构。
本发明的第二实施方式涉及一种字典查询解压缩方法。第二实施方式为与第一实施方式相对应的解压缩方式,为第一实施方式中的逆过程。也就是说,自动识别压缩文的第一标志字节,根据其匹配与否的信息,配合已解压的原文所构成的滑动窗口,完全无损地恢复压缩之前的原文。
具体地说,如图4所示,在步骤410中,解析第一标志字节中的固定比特位,即解析第一标志字节中的最高比特位。
接着,在步骤420中,根据固定比特位指示的匹配结果,恢复压缩之前的原文。其中,如果固定比特位指示匹配(即第一标志字节的最高位比特为1),则根据第一标志字节中其余比特指示的匹配长度与第二标志字节指示的匹配起始位置,恢复压缩之前的原文;如果固定比特位指示不匹配(即第一标志字节的最高位比特为0),则根据第一标志字节中其余比特指示的原文长度,恢复压缩之前的原文。
具体地说,将最近已解码的256个字节作为解码滑动窗口,在第一标志字节的最高位比特指示匹配时,以解码滑动窗口的起点作为匹配起始位置的基点,取出匹配起始位置起的符合匹配长度的字节数。
本领域技术人员可以理解,原文以256字节为地址块的示意图如图5所示,写指针(write pointer)位置是压缩/解压所在的最新字节,解码滑动窗口即回溯256字节的范围(图5中有阴影覆盖的部分):较稀疏的属于第N块,较密集的属于第N+1块。图6示意了现有的LZ77方法定义的匹配位移(图中为双向箭头),匹配位移的基点是(写指针-256),匹配的第一个字节在原文中的地址是(写指针-256+匹配位移),很明显,由于写指针在不断变化,此处必须进行加减运算。而在本实施方式中,解码滑动窗口保存为图7的格式,原文不断向下刷新,刷新255字节后跳回0字节。匹配位移则以每个地址块起点(固定为图7中的0字节位置)为基点,如图8所示,匹配位移是对向箭头夹住的部分。如此匹配时,直接从滑动窗口中取数即可,无需加减运算。图8中0字节位置,即可代表原文的(N+1)*256字节(如果匹配的是较密集的阴影部分),也可代表N*256字节(如果匹配的是较稀疏的阴影部分),无需额外信息,自动区分而无歧义。也就是说,由于对于匹配位移的计算,以二的整数次幂为基本单位构成地址块,以每个地址块的起点作为位移基点,匹配时,直接从滑动窗口中取数即可,大量地减少了地址加减计算。
本发明第三实施方式涉及一种字典查询压缩装置,如图9所示,包含:
匹配搜索单元,用于在滑动窗口中搜索尽可能长的与前瞻窗口匹配的部分;其中,所述将最近已编码的N个字节作为滑动窗口,将即将要编码的L个字节作为前瞻窗口,所述N为滑动窗口包含的字节数,所述L为前瞻窗口包含的字节数。
判断单元,用于判断所述匹配搜索单元是否在所述滑动窗口中搜索到与所述前瞻窗口匹配的部分。
编码单元,用于在所述判断单元判定搜索到与所述前瞻窗口匹配的部分时,采用第一标志字节和第二标志字节表示匹配结果、匹配长度与匹配起始位置;其中,所述第一标志字节中的一个固定比特位用于指示所述滑动窗口与所述前瞻窗口匹配,所述第一标志字节中的其余比特用于指示匹配的长度;所述第二标志字节用于指示匹配起始位置;并在所述判断单元判定未搜索到与所述前瞻窗口匹配的部分时,采用所述第一标志字节表示匹配结果与将跟随的原文长度;其中,所述第一标志字节中的所述固定比特位用于指示所述滑动窗口与所述前瞻窗口不匹配,所述第一标志字节中的其余比特用于指示将跟随的原文长度。
在本实施方式中,第一标志字节中的所述固定比特位为该第一标志字节中的最高比特位。
不难发现,本实施方式为与第一实施方式相对应的系统实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
本发明第四实施方式涉及一种字典查询解压缩装置。第四实施方式为与第三实施方式相对应的解压缩装置,如图10所示,包含:
匹配结果分析单元,用于解析第一标志字节中的所述固定比特位;
解码单元,用于根据所述固定比特位指示的匹配结果,恢复压缩之前的原文;
其中,所述解码单元在所述固定比特位指示匹配时,根据所述第一标志字节中其余比特指示的匹配长度与所述第二标志字节指示的匹配起始位置,恢复压缩之前的原文;在所述固定比特位指示不匹配时,根据所述第一标志字节中其余比特指示的原文长度,恢复压缩之前的原文。
值得一提的是,解码单元在根据所述第一标志字节中其余比特指示的匹配长度与所述第二标志字节指示的匹配起始位置,恢复压缩之前的原文时,将最近已解码的N个字节作为解码滑动窗口,以所述解码滑动窗口的起点作为所述匹配起始位置的基点,取出所述匹配起始位置起的符合匹配长度的字节数。
由于第二实施方式与本实施方式相互对应,因此本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,在第一实施方式中所能达到的技术效果在本实施方式中也同样可以实现,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (10)

1.一种字典查询压缩方法,其特征在于,包含以下步骤:
将最近已编码的N个字节作为滑动窗口,将即将要编码的L个字节作为前瞻窗口;其中,所述N为滑动窗口包含的字节数,所述L为前瞻窗口包含的字节数;
在所述滑动窗口中搜索尽可能长的与所述前瞻窗口匹配的部分;
如果在所述滑动窗口中搜索到与所述前瞻窗口匹配的部分,则采用第一标志字节和第二标志字节表示匹配结果、匹配长度与匹配起始位置;其中,所述第一标志字节中的一个固定比特位用于指示所述滑动窗口与所述前瞻窗口匹配,所述第一标志字节中的其余比特用于指示匹配的长度;所述第二标志字节用于指示匹配起始位置;
如果在所述滑动窗口中未搜索到与所述前瞻窗口匹配的部分,则采用所述第一标志字节表示匹配结果与将跟随的原文长度;其中,所述第一标志字节中的所述固定比特位用于指示所述滑动窗口与所述前瞻窗口不匹配,所述第一标志字节中的其余比特用于指示将跟随的原文长度。
2.根据权利要求1所述的字典查询压缩方法,其特征在于,
所述第一标志字节中的所述固定比特位为该第一标志字节中的最高比特位。
3.根据权利要求1所述的字典查询压缩方法,其特征在于,在所述采用第一标志字节和第二标志字节表示匹配结果、匹配长度与匹配起始位置的步骤中,
将所述第一标志字节中的其余比特设置为表示实际匹配字节数-1的数值;
在所述采用第一标志字节表示匹配结果与将跟随的原文长度的步骤中,
将所述第一标志字节中的其余比特设置为表示实际将跟随的原文的字节数-1的数值。
4.根据权利要求1所述的字典查询压缩方法,其特征在于,所述N为256。
5.一种字典查询解压缩方法,对应于权利要求1至4中任一项所述的字典查询压缩方法,其特征在于,包含以下步骤:
解析所述第一标志字节中的所述固定比特位;
根据所述固定比特位指示的匹配结果,恢复压缩之前的原文;
其中,如果所述固定比特位指示匹配,则根据所述第一标志字节中其余比特指示的匹配长度与所述第二标志字节指示的匹配起始位置,恢复压缩之前的原文;如果所述固定比特位指示不匹配,则根据所述第一标志字节中其余比特指示的原文长度,恢复压缩之前的原文。
6.根据权利要求5所述的字典查询解压缩方法,其特征在于,在所述根据第一标志字节中其余比特指示的匹配长度与所述第二标志字节指示的匹配起始位置,恢复压缩之前的原文的步骤中,
将最近已解码的N个字节作为解码滑动窗口,以所述解码滑动窗口的起点作为所述匹配起始位置的基点,取出所述匹配起始位置起的符合匹配长度的字节数。
7.一种字典查询压缩装置,其特征在于,包含:
匹配搜索单元,用于在滑动窗口中搜索尽可能长的与前瞻窗口匹配的部分;其中,所述将最近已编码的N个字节作为滑动窗口,将即将要编码的L个字节作为前瞻窗口,所述N为滑动窗口包含的字节数,所述L为前瞻窗口包含的字节数;
判断单元,用于判断所述匹配搜索单元是否在所述滑动窗口中搜索到与所述前瞻窗口匹配的部分;
编码单元,用于在所述判断单元判定搜索到与所述前瞻窗口匹配的部分时,采用第一标志字节和第二标志字节表示匹配结果、匹配长度与匹配起始位置;其中,所述第一标志字节中的一个固定比特位用于指示所述滑动窗口与所述前瞻窗口匹配,所述第一标志字节中的其余比特用于指示匹配的长度;所述第二标志字节用于指示匹配起始位置;并在所述判断单元判定未搜索到与所述前瞻窗口匹配的部分时,采用所述第一标志字节表示匹配结果与将跟随的原文长度;其中,所述第一标志字节中的所述固定比特位用于指示所述滑动窗口与所述前瞻窗口不匹配,所述第一标志字节中的其余比特用于指示将跟随的原文长度。
8.根据权利要求7所述的字典查询压缩装置,其特征在于,
所述第一标志字节中的所述固定比特位为该第一标志字节中的最高比特位。
9.一种字典查询解压缩装置,对应于权利要求7或8所述的字典查询压缩装置,其特征在于,包含:
匹配结果分析单元,用于解析所述第一标志字节中的所述固定比特位;
解码单元,用于根据所述固定比特位指示的匹配结果,恢复压缩之前的原文;
其中,所述解码单元在所述固定比特位指示匹配时,根据所述第一标志字节中其余比特指示的匹配长度与所述第二标志字节指示的匹配起始位置,恢复压缩之前的原文;在所述固定比特位指示不匹配时,根据所述第一标志字节中其余比特指示的原文长度,恢复压缩之前的原文。
10.根据权利要求9所述的字典查询解压缩装置,其特征在于,
所述解码单元在根据所述第一标志字节中其余比特指示的匹配长度与所述第二标志字节指示的匹配起始位置,恢复压缩之前的原文时,将最近已解码的N个字节作为解码滑动窗口,以所述解码滑动窗口的起点作为所述匹配起始位置的基点,取出所述匹配起始位置起的符合匹配长度的字节数。
CN201210592500.XA 2012-12-31 2012-12-31 字典查询压缩、解压缩方法及其装置 Expired - Fee Related CN103078646B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210592500.XA CN103078646B (zh) 2012-12-31 2012-12-31 字典查询压缩、解压缩方法及其装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210592500.XA CN103078646B (zh) 2012-12-31 2012-12-31 字典查询压缩、解压缩方法及其装置

Publications (2)

Publication Number Publication Date
CN103078646A true CN103078646A (zh) 2013-05-01
CN103078646B CN103078646B (zh) 2016-05-11

Family

ID=48155064

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210592500.XA Expired - Fee Related CN103078646B (zh) 2012-12-31 2012-12-31 字典查询压缩、解压缩方法及其装置

Country Status (1)

Country Link
CN (1) CN103078646B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016062252A1 (en) * 2014-10-21 2016-04-28 Huawei Technologies Co., Ltd. Parallel dictionary-based compression encoder
CN105824829A (zh) * 2015-01-06 2016-08-03 中国移动通信集团浙江有限公司 一种用于订购记录的压缩方法、解压缩方法及装置
CN106233632A (zh) * 2014-03-19 2016-12-14 甲骨文国际公司 Ozip压缩和解压缩
WO2016197804A1 (zh) * 2015-06-08 2016-12-15 中国移动通信集团公司 数据包的压缩方法和装置
CN107729051A (zh) * 2017-09-25 2018-02-23 珠海市杰理科技股份有限公司 代码处理方法、装置、可读存储介质和计算机设备
WO2020259704A1 (zh) * 2019-06-28 2020-12-30 华为技术有限公司 一种用于电子设备的数据压缩、数据解压方法及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030048207A1 (en) * 2001-09-06 2003-03-13 Xerox Corporation Sliding window compression method utilizing compression hotspots
CN101692251A (zh) * 2009-08-31 2010-04-07 上海宝信软件股份有限公司 基于函数参数估计的通用过程数据在线压缩、解压方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030048207A1 (en) * 2001-09-06 2003-03-13 Xerox Corporation Sliding window compression method utilizing compression hotspots
CN101692251A (zh) * 2009-08-31 2010-04-07 上海宝信软件股份有限公司 基于函数参数估计的通用过程数据在线压缩、解压方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ARTHUR KHU: "Xilinx FPGA Configuration Data Compression and Decompression", 《WHITE PAPER:CONFIGURATION SOLUTIONS》 *
JULIAN BUCKNALL: "《Delphi算法与数据结构》", 31 August 2003 *
蔡成攀: "无损数据压缩技术在嵌入式系统中的应用", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106233632A (zh) * 2014-03-19 2016-12-14 甲骨文国际公司 Ozip压缩和解压缩
CN106233632B (zh) * 2014-03-19 2019-08-06 甲骨文国际公司 Ozip压缩和解压缩
US9647684B2 (en) 2014-10-21 2017-05-09 Huawei Technologies Co., Ltd. Memory-based history search
US9407287B2 (en) 2014-10-21 2016-08-02 Huawei Technologies Co., Ltd. Parallel history search and encoding for dictionary-based compression
WO2016062252A1 (en) * 2014-10-21 2016-04-28 Huawei Technologies Co., Ltd. Parallel dictionary-based compression encoder
CN106852185A (zh) * 2014-10-21 2017-06-13 华为技术有限公司 基于字典的并行压缩编码器
US9385748B2 (en) 2014-10-21 2016-07-05 Huawei Technologies Co., Ltd. Parallel dictionary-based compression encoder
CN106852185B (zh) * 2014-10-21 2019-10-25 华为技术有限公司 基于字典的并行压缩编码器
CN105824829A (zh) * 2015-01-06 2016-08-03 中国移动通信集团浙江有限公司 一种用于订购记录的压缩方法、解压缩方法及装置
CN105824829B (zh) * 2015-01-06 2020-05-15 中国移动通信集团浙江有限公司 一种用于订购记录的压缩方法、解压缩方法及装置
WO2016197804A1 (zh) * 2015-06-08 2016-12-15 中国移动通信集团公司 数据包的压缩方法和装置
CN107729051A (zh) * 2017-09-25 2018-02-23 珠海市杰理科技股份有限公司 代码处理方法、装置、可读存储介质和计算机设备
CN107729051B (zh) * 2017-09-25 2020-06-16 珠海市杰理科技股份有限公司 代码处理方法、装置、可读存储介质和计算机设备
WO2020259704A1 (zh) * 2019-06-28 2020-12-30 华为技术有限公司 一种用于电子设备的数据压缩、数据解压方法及电子设备

Also Published As

Publication number Publication date
CN103078646B (zh) 2016-05-11

Similar Documents

Publication Publication Date Title
CN103078646A (zh) 字典查询压缩、解压缩方法及其装置
CN102244518B (zh) 并行解压缩的硬件实现的系统及方法
CN101989443B (zh) 用于数据压缩的多模式编码
US10902937B2 (en) Lossless compression of DNA sequences
CN112953550B (zh) 数据压缩的方法、电子设备及存储介质
CN103067022B (zh) 一种整型数据无损压缩方法、解压缩方法及装置
CN103236847A (zh) 基于多层哈希结构与游程编码的数据无损压缩方法
CN102510323A (zh) 一种串口数据的帧识别方法
CN101800556A (zh) 适合数据压缩的方法和设置
CN101667843B (zh) 嵌入式系统的数据压缩、及解压缩方法与装置
US9479194B2 (en) Data compression apparatus and data decompression apparatus
US20100289676A1 (en) Data compression/decompression method and computer readable storage medium storing compression/decompression program
CN101562455A (zh) 内容可适性二元算数编码的译码装置及其译码方法
CN108886367A (zh) 用于压缩和解压缩数据的方法、设备和系统
CN103248367A (zh) 码流数据的编码、解码方法和装置
CN114442954B (zh) 一种lz4编码压缩装置
CN101751451A (zh) 一种中文数据压缩及解压缩方法及相关设备
CN116016606A (zh) 一种基于智慧云的污水处理运维数据高效管理系统
CN104410424A (zh) 嵌入式设备内存数据的快速无损压缩方法
US8532415B2 (en) Data compression method
CN102831020A (zh) 日志检测方法及系统
CN117177100B (zh) 一种智能ar偏振数据传输方法
CN103618554B (zh) 基于字典的内存页面压缩方法
CN104734722A (zh) 数据压缩方法及数据解压缩装置
CN102932001B (zh) 运动捕获数据压缩、解压缩方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160511

Termination date: 20181231