一种数据编码方法、解码方法及装置转让专利

申请号 : CN201911147354.8

文献号 : CN112825494A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王剑雄

申请人 : 中移物联网有限公司中国移动通信集团有限公司

摘要 :

本发明提供一种数据编码方法、解码方法及装置,涉及通信技术领域,所述数据编码方法包括:获取待编码数据的ASCII码序列;采用预设编码规则对所述ASCII码序列进行编码;对编码结果进行分组,获得多条编码序列。本发明的方案简化了编码过程的运算,提高了编码结果的安全性。

权利要求 :

1.一种数据编码方法,其特征在于,包括:获取待编码数据的ASCII码序列;

采用预设编码规则对所述ASCII码序列进行编码;

对编码结果进行分组,获得多条编码序列。

2.根据权利要求1所述的数据编码方法,其特征在于,采用预设编码规则对所述ASCII码序列进行编码的步骤包括:

以每三个ASCII码为一组,对所述ASCII码序列进行分组;

采用预设编码转换关系,依次对每组所述ASCII码进行编码。

3.根据权利要求2所述的数据编码方法,其特征在于,所述预设编码转换关系为:其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组ASCII码编码后的第二个编码结果,为该组ASCII码编码后的第三个编码结果。

4.根据权利要求2所述的数据编码方法,其特征在于,以每三个ASCII码为一组,对所述ASCII码序列进行分组的步骤包括:获取所述ASCII码序列中包含的ASCII码数量;

判断所述ASCII码数量是否为三的整数倍,若是,则自所述ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII码序列进行分组;若否,则在所述ASCII码序列中的首个ASCII码之前或者最后一个ASCII码之后增加至少一个补齐因子,使增加所述补齐因子之后的新ASCII码序列的ASCII码数量为三的整数倍,并自所述新ASCII码的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述新ASCII码序列进行分组。

5.根据权利要求2所述的数据编码方法,其特征在于,对编码结果进行分组,获得多条编码序列的步骤包括:

将依次获取的每组编码结果中的首个编码结果排列为第一条编码序列,将依次获取的每组编码结果中的第二个编码结果排列为第二条编码序列,将依次获取的每组编码结果中的第三个编码结果排列为第三条编码序列。

6.一种数据解码方法,其特征在于,包括:对三个待解码数据序列进行重组,生成待解码数据组序列;

采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;

根据解码结果获取原始数据。

7.根据权利要求6所述的数据解码方法,其特征在于,对三个待解码数据序列进行重组,生成待解码数据组序列的步骤包括:依次提取三个所述待解码数据序列的首个待解码数据;

删除所述待解码数据序列中当前提取的待解码数据;

将当前提取的三个所述待解码数据重组为一个待解码数据组,并返回至依次提取三个所述待解码数据序列的首个待解码数据的步骤。

8.根据权利要求7所述的数据解码方法,其特征在于,采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码的步骤包括:根据公式:

依次对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据,为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据组中的第二个解码结果,z为该数据组中的第三个解码结果。

9.根据权利要求7所述的数据解码方法,其特征在于,根据解码结果获取原始数据的步骤包括:

按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;

判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的新ASCII码序列获取所述原始数据;若否,则根据所述ASCII码序列获取所述原始数据。

10.一种数据编码装置,其特征在于,包括:第一获取模块,用于获取待编码数据的ASCII码序列;

编码模块,用于采用预设编码规则对所述ASCII码序列进行编码;

第二获取模块,用于对编码结果进行分组,获得多条编码序列。

11.一种数据解码装置,其特征在于,包括:重组模块,用于对三个待解码数据序列进行重组,生成待解码数据组序列;

解码模块,用于采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;

获取模块,用于根据解码结果获取原始数据。

说明书 :

一种数据编码方法、解码方法及装置

技术领域

[0001] 本发明涉及通信技术领域,尤其是涉及一种数据编码方法、解码方法及装置。

背景技术

[0002] 一方面,现有技术中的编码过程基本都会使用到大量的位运算等操作,导致编码步骤比较复杂;另一方面,现有技术中的编码方法,由于没有有效方法对一条完整的数据进
行拆分,所以,一般针对一条数据,会以数据源整体进行编码,编码后只会生成一条编码数
据,这类编码模式下,第三方只需要拿到这一条编码数据就能得到全部编码数据信息,更容
易解码出原始数据,导致编码结果单一化,安全性相对较低。

发明内容

[0003] 本发明的目的在于提供一种数据编码方法、解码方法及装置,从而解决现有技术中编码过程复杂的问题。
[0004] 为了达到上述目的,本发明实施例提供一种数据编码方法,包括:
[0005] 获取待编码数据的ASCII码序列;
[0006] 采用预设编码规则对所述ASCII码序列进行编码;
[0007] 对编码结果进行分组,获得多条编码序列。
[0008] 可选的,采用预设编码规则对所述ASCII码序列进行编码的步骤包括:
[0009] 以每三个ASCII码为一组,对所述ASCII码序列进行分组;
[0010] 采用预设编码转换关系,依次对每组所述ASCII码进行编码。
[0011] 可选的,所述预设编码转换关系为:
[0012]
[0013] 其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组
ASCII码编码后的第二个编码结果,为该组ASCII码编码后的第三个编码结果。
[0014] 可选的,以每三个ASCII码为一组,对所述ASCII码序列进行分组的步骤包括:
[0015] 获取所述ASCII码序列中包含的ASCII码数量;
[0016] 判断所述ASCII码数量是否为三的整数倍,若是,则自所述ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII码序列进行
分组;若否,则在所述ASCII码序列中的首个ASCII码之前或者最后一个ASCII码之后增加至
少一个补齐因子,使增加所述补齐因子之后的新ASCII码序列的ASCII码数量为三的整数
倍,并自所述新ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII
码为一组,对所述新ASCII码序列进行分组。
[0017] 可选的,对编码结果进行分组,获得多条编码序列的步骤包括:
[0018] 将依次获取的每组编码结果中的首个编码结果排列为第一条编码序列,将依次获取的每组编码结果中的第二个编码结果排列为第二条编码序列,将依次获取的每组编码结
果中的第三个编码结果排列为第三条编码序列。
[0019] 本发明实施例还提供一种数据解码方法,包括:
[0020] 对三个待解码数据序列进行重组,生成待解码数据组序列;
[0021] 采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;
[0022] 根据解码结果获取原始数据。
[0023] 可选的,对三个待解码数据序列进行重组,生成待解码数据组序列的步骤包括:
[0024] 依次提取三个所述待解码数据序列的首个待解码数据;
[0025] 删除所述待解码数据序列中当前提取的待解码数据;
[0026] 将当前提取的三个所述待解码数据重组为一个待解码数据组,并返回至依次提取三个所述待解码数据序列的首个待解码数据的步骤。
[0027] 可选的,采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码的步骤包括:
[0028] 根据公式:
[0029]
[0030] 依次对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据, 为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据
组中的第二个解码结果,z为该数据组中的第三个解码结果。
[0031] 可选的,根据解码结果获取原始数据的步骤包括:
[0032] 按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;
[0033] 判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的新ASCII码序列获取所述原始数据;若否,则
根据所述ASCII码序列获取所述原始数据。
[0034] 本发明实施例还提供一种数据编码装置,包括:
[0035] 第一获取模块,用于获取待编码数据的ASCII码序列;
[0036] 编码模块,用于采用预设编码规则对所述ASCII码序列进行编码;
[0037] 第二获取模块,用于对编码结果进行分组,获得多条编码序列。
[0038] 可选的,所述编码模块包括:
[0039] 分组子模块,用于以每三个ASCII码为一组,对所述ASCII码序列进行分组;
[0040] 编码子模块,用于采用预设编码转换关系,依次对每组所述ASCII码进行编码。
[0041] 可选的,所述预设编码转换关系为:
[0042]
[0043] 其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组
ASCII码编码后的第二个编码结果,为该组ASCII码编码后的第三个编码结果。
[0044] 可选的,所述分组子模块包括:
[0045] 获取单元,用于获取所述ASCII码序列中包含的ASCII码数量;
[0046] 判断单元,用于判断所述ASCII码数量是否为三的整数倍,若是,则自所述ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII
码序列进行分组;若否,则在所述ASCII码序列中的首个ASCII码之前或者最后一个ASCII码
之后增加至少一个补齐因子,使增加所述补齐因子之后的新ASCII码序列的ASCII码数量为
三的整数倍,并自所述新ASCII码的首个ASCII码或最后一个ASCII码开始,依次以每三个
ASCII码为一组,对所述新ASCII码序列进行分组。
[0047] 可选的,所述第二获取模块具体用于将依次获取的每组编码结果中的首个编码结果排列为第一条编码序列,将依次获取的每组编码结果中的第二个编码结果排列为第二条
编码序列,将依次获取的每组编码结果中的第三个编码结果排列为第三条编码序列。
[0048] 本发明实施例还提供一种数据解码装置,包括:
[0049] 重组模块,用于对三个待解码数据序列进行重组,生成待解码数据组序列;
[0050] 解码模块,用于采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;
[0051] 获取模块,用于根据解码结果获取原始数据。
[0052] 可选的,所述重组模块包括:
[0053] 提取子模块,用于依次提取三个所述待解码数据序列的首个待解码数据;
[0054] 删除子模块,用于删除所述待解码数据序列中当前提取的待解码数据;
[0055] 重组子模块,用于将当前提取的三个所述待解码数据重组为一个待解码数据组,并返回至依次提取三个所述待解码数据序列的首个待解码数据的步骤。
[0056] 可选的,所述解码模块具体用于根据公式:
[0057]
[0058] 依次对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据, 为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据
组中的第二个解码结果,z为该数据组中的第三个解码结果。
[0059] 可选的,所述获取模块包括:
[0060] 获取子模块,用于按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;
[0061] 判断子模块,用于判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的新ASCII码序列获取所述
原始数据;若否,则根据所述ASCII码序列获取所述原始数据。
[0062] 本发明实施例还提供一种数据编码设备,包括:处理器,存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如
上所述的数据编码方法。
[0063] 本发明实施例还提供一种数据解码设备,包括:处理器,存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如
上所述的数据解码方法。
[0064] 本发明实施例还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的数据编码方
法的步骤或数据解码方法的步骤。
[0065] 本发明的上述技术方案至少具有如下有益效果:
[0066] 本发明实施例的数据编码方法,通过首先获取待编码数据的ASCII码序列,然后根据预设编码规则对ASCII码序列进行编码,简化了编码过程的运算,避免使用到大量的位运
算等操作,最后对编码结果进行分组,获得多条编码序列,实现了将一条待编码数据编码为
多条编码序列,并分别存储,提高了编码结果的安全性。

附图说明

[0067] 图1为本发明实施例的数据编码方法的基本步骤示意图;
[0068] 图2为本发明实施例的数据解码方法的基本步骤示意图;
[0069] 图3为本发明实施例的数据编码装置的基本组成示意图;
[0070] 图4为本发明实施例的数据解码装置的基本组成示意图。

具体实施方式

[0071] 为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
[0072] 本发明针对现有技术中的数据编码过程复杂且编码结果安全性低的问题,提供了一种数据编码方法、解码方法及装置,简化了编码过程且将待编码数据编码为多条编码序
列,提高了编码结果的安全性。
[0073] 请参阅图1,为本发明实施例的数据编码方法的基本步骤示意图,所述数据编码方法包括:
[0074] 步骤S101,获取待编码数据的ASCII码序列;
[0075] 众所周知,无论待编码的数据源是数字、字母、特殊符号或是控制字符,都可以将数据所包含的每一个字符转化成一个对应的ASCII码,转化后的数据为十进制的0~255的
数字。例如,原始数据“CMCC2019”被编码后的数据为“67 77 67 67 50 48 49 57”,原始数
据“CMIOT2020”编码后数据为“67 77 73 79 84 20 48 50 48”。
[0076] 步骤S102,采用预设编码规则对所述ASCII码序列进行编码;
[0077] 本步骤中,采用所述预设编码规则对所述ASCII码进行编码,使得编码过程不依赖任何介质,且能够适应各种使用环境,简化了解码过程。
[0078] 步骤S103,对编码结果进行分组,获得多条编码序列。
[0079] 本步骤,通过对编码结果进行分组,实现了将一条待编码数据编码为多条编码序列,从而实现了编码结果的分别存储和传输,提高了数据的安全性。
[0080] 本发明实施例的数据编码方法,通过采用预设编码规则对所述ASCII码序列进行编码简化了编码过程,且编码过程不依赖任何介质,从而使得编码过程能够适应于不同的
环境;通过对编码结果进行分组,获得多条编码序列,实现了编码结果的分别存储和分别传
输,提高了数据的安全性。
[0081] 可选的,步骤S102,采用预设编码规则对所述ASCII码序列进行编码,包括:
[0082] 首先,以每三个ASCII码为一组,对所述ASCII码序列进行分组;
[0083] 具体的,本步骤按照ASCII码序列中的ASCII码顺序对各ASCII码进行分组,即从ASCII码序列的首个ASCII码开始或从ASCII码序列的最后一个ASCII码开始,依次将每三个
ASCII码分为一组。
[0084] 其次,采用预设编码转换关系,依次对每组所述ASCII码进行编码。
[0085] 具体的,在编码过程中,以一组ASCII码(三个ASCII码)为一个编码单元,对ASCII码序列进行编码。
[0086] 优选地,所述预设编码转换关系为:
[0087]
[0088] 其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组
ASCII码编码后的第二个编码结果, 为该组ASCII码编码后的第三个编码结果,即:(x,y,
z)为一组待编码数据组,(r,θ,)为所述待编码数据组的编码结果。
[0089] 本发明实施例中将每组中的三个ASCII码看作为一个空间点的直角坐标系中的坐标,其中,第一个ASCII码为该点的x轴的坐标,第二个ASCII码为该点的y轴的坐标,第三个
ASCII码为该点的z轴的坐标,所述预设编码转换关系的原理为将直角坐标系转换为球坐标
系,即:编码结果为该空间点在一个球坐标系中的坐标。
[0090] 可选的,以每三个ASCII码为一组,对所述ASCII码序列进行分组的步骤包括:
[0091] 获取所述ASCII码序列中包含的ASCII码数量;
[0092] 判断所述ASCII码数量是否为三的整数倍,若是,则自所述ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII码序列进行
分组;若否,则在所述ASCII码序列中的首个ASCII码之前或者最后一个ASCII码之后增加至
少一个补齐因子,使增加所述补齐因子之后的新ASCII码序列的ASCII码数量为三的整数
倍,并自所述新ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII
码为一组,对所述新ASCII码序列进行分组。
[0093] 本步骤用于在所述ASCII码序列中包含的ASCII码数量不为三的整数倍时,使得依序以三个ASCII码为一组对所述ASCII码序列进行分组时,最后一组ASCII码只包含一个或
两个ASCII码,导致无法按照所述预设编码规则进行编码,因此,需要在所述ASCII码序列中
的首个ASCII码之前或最后一个ASCII码之后增加补齐因子,使增加后的新ASCII码序列中
包含的ASCII码数量为三的整数倍。
[0094] 需要说明的是,由于ASCII码为一个0~255的十进制数字,为了避免所述补齐因子对原始数据产生混淆,本发明实施例中的补齐因子优选为大于255的三位十进制数字,如:
256。
[0095] 仍以前述例子为例,自所述ASCII码序列的首个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII码序列进行分组的实现方式可以为如表1所示。
[0096] 表1
[0097] 原始数据 ASCII码 数据分组 补齐因子数CMCC2019 67 77 67 67 50 48 49 57 (67,77,67)(67,50,48)(49,57,256) 1
CMIOT2020 67 77 73 79 84 20 48 50 48 (67,77,73)(79,84,20)(48,50,48) 0
[0098] 由于所述ASCII码为一个0~255的十进制数字,补齐因子优选256,在包含两个补齐因子时,编码后的r值为最大,即r的最大值为442.828409206,另外,编码后的θ和 为两
个夹角,都小于90,因此,编码后的数字均不会越界,即:不会超过常见浮点型数据类型(如:
float、double)的最大存储值另外,采用本发明实施例的数据编码方法对数据进行编码,编
码后的数据为浮点型,不会产生不可见(不可打印)字符。
[0099] 可选的,步骤S103,对编码结果进行分组,获得多条编码序列,包括:
[0100] 将依次获取的每组编码结果中的首个编码结果排列为第一条编码序列,将依次获取的每组编码结果中的第二个编码结果排列为第二条编码序列,将依次获取的每组编码结
果中的第三个编码结果排列为第三条编码序列。
[0101] 优选地,本发明实施例的编码结果中,第一条编码序列为r值序列,第二条编码序列为θ值序列,第三条编码序列为 为值序列。
[0102] 本发明实施例的数据编码方法,通过首先对所述ASCII码序列依序以三个ASCII码为一组进行分组,然后采用所述预设编码转换关系(直角坐标转换为球坐标)依次对每组所
述ASCII码进行编码,获得编码结果,最终按照分组顺序将每组编码结果中的首个编码结果
组合为第一条编码序列,将每组编码结果中的第二个编码结果组合为第二条编码序列,将
每组编码结果中的第三个编码结果组合为第三条编码序列,避免编码过程中使用大量的位
运算等操作,简化了编码过程;避免了编码导致产生不可见字符;实现了分布式数据存储、
拆分式数据传输以及分别对多条编码序列进行其他加密算法或编码算法,提高了数据安全
性。
[0103] 请参阅图2,为本发明实施例的数据解码方法的基本步骤示意图,所述数据解码方法包括:
[0104] 步骤S201,对三个待解码数据序列进行重组,生成待解码数据组序列;
[0105] 本步骤具体用于将三个所述待解码数据序列重组为适用于预设解码规则的多个待解码数据组,以便于采用所述预设解码规则进行解码。
[0106] 本发明实施例中的三个待解码数据序列中,第一条待解码数据序列为r值序列,第二条待解码数据序列为θ值序列,第三条待解码数据序列为 值序列。
[0107] 步骤S202,采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;
[0108] 本步骤中,采用所述预设解码规则对所述待解码数据进行解码,使得解码过程不依赖任何介质,且能够适应各种使用环境,简化了解码过程。
[0109] 步骤S203,根据解码结果获取原始数据。
[0110] 本发明实施例的数据解码方法为与本发明实施例的数据编码方法相对应的解码过程,通过采用预设解码规则对待解码数据进行解码,简化了解码过程,且解码过程不依赖
任何介质,从而使得解码过程能够适用于不同的环境。
[0111] 可选的,步骤S201,对三个待解码数据序列进行重组,生成待解码数据组序列,包括:
[0112] 依次提取三个所述待解码数据序列的首个待解码数据;
[0113] 删除所述待解码数据序列中当前提取的待解码数据;
[0114] 将当前提取的三个所述待解码数据重组为一个待解码数据组,并返回至依次提取三个所述待解码数据序列的首个待解码数据的步骤。
[0115] 本步骤用于将r值序列,θ值序列和 值序列进行重组,得到多组待解码数据,其中,每组待解码数据的格式为(r,θ,)。
[0116] 可选的,步骤S202,采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码的步骤包括:
[0117] 根据公式:
[0118]
[0119] 对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据, 为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据组中
的第二个解码结果,z为该数据组中的第三个解码结果,即:(r,θ,)为一组待解码数据组,
(x,y,z)为所述待解码数据组的解码结果。
[0120] 本发明实施例的所述预设解码规则的原理为:将球坐标系中的坐标转化为直角坐标系中的坐标。
[0121] 可选的,步骤S203,根据解码结果获取原始数据,包括:
[0122] 按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;
[0123] 举例而言,若待解码数据组为(r1θ1 )、(r2θ2 )、…、(rnθn ),则对应的解码结果依次为(x1 y1 z1)、(x2 y2 z2)、…、(xn yn zn),排序后的解码结果为:x1、y1、z1、x2、y2、z2、…、
xn、yn、zn。
[0124] 判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的新ASCII码序列获取所述原始数据;若否,则
根据所述ASCII码序列获取所述原始数据。
[0125] 优选地,所述预设数据为256,本步骤具体可以为判断所述ASCII码序列中的最后两个ASCII码或前两个ASCII码是否为所述预设补齐因子256,若是,则说明在编码时引入了
补齐因子,所述补齐因子并不是原始数据,因此,需要删除所述补齐因子。
[0126] 请参阅图3,为本发明实施例的数据编码装置的基本结构示意图,所述数据编码装置包括:
[0127] 第一获取模块301,用于获取待编码数据的ASCII码序列;
[0128] 编码模块302,用于采用预设编码规则对所述ASCII码序列进行编码;
[0129] 第二获取模块303,用于对编码结果进行分组,获得多条编码序列。
[0130] 本发明实施例的数据编码装置中,所述编码模块302包括:
[0131] 分组子模块,用于以每三个ASCII码为一组,对所述ASCII码序列进行分组;
[0132] 编码子模块,用于采用预设编码转换关系,依次对每组所述ASCII码进行编码。
[0133] 本发明实施例的数据编码装置中,所述预设编码转换关系为:
[0134]
[0135] 其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组
ASCII码编码后的第二个编码结果, 为该组ASCII码编码后的第三个编码结果。
[0136] 本发明实施例的数据编码装置中,所述分组子模块包括:
[0137] 获取单元,用于获取所述ASCII码序列中包含的ASCII码数量;
[0138] 判断单元,用于判断所述ASCII码数量是否为三的整数倍,若是,则自所述ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII
码序列进行分组;若否,则在所述ASCII码序列中的首个ASCII码之前或者最后一个ASCII码
之后增加至少一个补齐因子,使增加所述补齐因子之后的新ASCII码序列的ASCII码数量为
三的整数倍,并自所述新ASCII码的首个ASCII码或最后一个ASCII码开始,依次以每三个
ASCII码为一组,对所述新ASCII码序列进行分组。
[0139] 本发明实施例的数据编码装置中,所述第二获取模块具体用于将依次获取的每组编码结果中的首个编码结果排列为第一条编码序列,将依次获取的每组编码结果中的第二
个编码结果排列为第二条编码序列,将依次获取的每组编码结果中的第三个编码结果排列
为第三条编码序列。
[0140] 请参阅图4,为本发明实施例的数据解码装置的基本结构示意图,所述数据解码装置包括:
[0141] 重组模块401,用于对三个待解码数据序列进行重组,生成待解码数据组序列;
[0142] 解码模块402,用于采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;
[0143] 获取模块403,用于根据解码结果获取原始数据。
[0144] 本发明实施例的数据解码装置中,所述重组模块401包括:
[0145] 提取子模块,用于依次提取三个所述待解码数据序列的首个待解码数据;
[0146] 删除子模块,用于删除所述待解码数据序列中当前提取的待解码数据;
[0147] 重组子模块,用于将当前提取的三个所述待解码数据重组为一个待解码数据组,并返回至依次提取三个所述待解码数据序列的首个待解码数据的步骤。
[0148] 本发明实施例的数据解码装置中,所述解码模块402具体用于根据公式:
[0149]
[0150] 对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据,为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据组中
的第二个解码结果,z为该数据组中的第三个解码结果。
[0151] 本发明实施例的数据解码装置中,所述获取模块403包括:
[0152] 获取子模块,用于按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;
[0153] 判断子模块,用于判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的ASCII码序列获取所述原
始数据;若否,则根据所述ASCII码序列获取所述原始数据。
[0154] 本发明实施例还提供一种数据编码设备,包括:处理器,存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如
上所述的数据编码方法。
[0155] 本发明实施例还提供一种数据解码设备,包括:处理器,存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如
上所述的数据解码方法。
[0156] 本发明实施例还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的数据编码方
法的步骤或数据解码方法的步骤。
[0157] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也
应视为本发明的保护范围。