CN112825494A - 一种数据编码方法、解码方法及装置 - Google Patents

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

Info

Publication number
CN112825494A
CN112825494A CN201911147354.8A CN201911147354A CN112825494A CN 112825494 A CN112825494 A CN 112825494A CN 201911147354 A CN201911147354 A CN 201911147354A CN 112825494 A CN112825494 A CN 112825494A
Authority
CN
China
Prior art keywords
data
decoded
ascii
ascii code
encoding
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.)
Pending
Application number
CN201911147354.8A
Other languages
English (en)
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.)
China Mobile Communications Group Co Ltd
China Mobile IoT Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile IoT 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 China Mobile Communications Group Co Ltd, China Mobile IoT Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201911147354.8A priority Critical patent/CN112825494A/zh
Publication of CN112825494A publication Critical patent/CN112825494A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

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

Description

一种数据编码方法、解码方法及装置
技术领域
本发明涉及通信技术领域,尤其是涉及一种数据编码方法、解码方法及装置。
背景技术
一方面,现有技术中的编码过程基本都会使用到大量的位运算等操作,导致编码步骤比较复杂;另一方面,现有技术中的编码方法,由于没有有效方法对一条完整的数据进行拆分,所以,一般针对一条数据,会以数据源整体进行编码,编码后只会生成一条编码数据,这类编码模式下,第三方只需要拿到这一条编码数据就能得到全部编码数据信息,更容易解码出原始数据,导致编码结果单一化,安全性相对较低。
发明内容
本发明的目的在于提供一种数据编码方法、解码方法及装置,从而解决现有技术中编码过程复杂的问题。
为了达到上述目的,本发明实施例提供一种数据编码方法,包括:
获取待编码数据的ASCII码序列;
采用预设编码规则对所述ASCII码序列进行编码;
对编码结果进行分组,获得多条编码序列。
可选的,采用预设编码规则对所述ASCII码序列进行编码的步骤包括:
以每三个ASCII码为一组,对所述ASCII码序列进行分组;
采用预设编码转换关系,依次对每组所述ASCII码进行编码。
可选的,所述预设编码转换关系为:
Figure BDA0002282572480000021
其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组ASCII码编码后的第二个编码结果,
Figure BDA0002282572480000022
为该组ASCII码编码后的第三个编码结果。
可选的,以每三个ASCII码为一组,对所述ASCII码序列进行分组的步骤包括:
获取所述ASCII码序列中包含的ASCII码数量;
判断所述ASCII码数量是否为三的整数倍,若是,则自所述ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII码序列进行分组;若否,则在所述ASCII码序列中的首个ASCII码之前或者最后一个ASCII码之后增加至少一个补齐因子,使增加所述补齐因子之后的新ASCII码序列的ASCII码数量为三的整数倍,并自所述新ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述新ASCII码序列进行分组。
可选的,对编码结果进行分组,获得多条编码序列的步骤包括:
将依次获取的每组编码结果中的首个编码结果排列为第一条编码序列,将依次获取的每组编码结果中的第二个编码结果排列为第二条编码序列,将依次获取的每组编码结果中的第三个编码结果排列为第三条编码序列。
本发明实施例还提供一种数据解码方法,包括:
对三个待解码数据序列进行重组,生成待解码数据组序列;
采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;
根据解码结果获取原始数据。
可选的,对三个待解码数据序列进行重组,生成待解码数据组序列的步骤包括:
依次提取三个所述待解码数据序列的首个待解码数据;
删除所述待解码数据序列中当前提取的待解码数据;
将当前提取的三个所述待解码数据重组为一个待解码数据组,并返回至依次提取三个所述待解码数据序列的首个待解码数据的步骤。
可选的,采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码的步骤包括:
根据公式:
Figure BDA0002282572480000031
依次对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据,
Figure BDA0002282572480000032
为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据组中的第二个解码结果,z为该数据组中的第三个解码结果。
可选的,根据解码结果获取原始数据的步骤包括:
按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;
判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的新ASCII码序列获取所述原始数据;若否,则根据所述ASCII码序列获取所述原始数据。
本发明实施例还提供一种数据编码装置,包括:
第一获取模块,用于获取待编码数据的ASCII码序列;
编码模块,用于采用预设编码规则对所述ASCII码序列进行编码;
第二获取模块,用于对编码结果进行分组,获得多条编码序列。
可选的,所述编码模块包括:
分组子模块,用于以每三个ASCII码为一组,对所述ASCII码序列进行分组;
编码子模块,用于采用预设编码转换关系,依次对每组所述ASCII码进行编码。
可选的,所述预设编码转换关系为:
Figure BDA0002282572480000041
其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组ASCII码编码后的第二个编码结果,
Figure BDA0002282572480000042
为该组ASCII码编码后的第三个编码结果。
可选的,所述分组子模块包括:
获取单元,用于获取所述ASCII码序列中包含的ASCII码数量;
判断单元,用于判断所述ASCII码数量是否为三的整数倍,若是,则自所述ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII码序列进行分组;若否,则在所述ASCII码序列中的首个ASCII码之前或者最后一个ASCII码之后增加至少一个补齐因子,使增加所述补齐因子之后的新ASCII码序列的ASCII码数量为三的整数倍,并自所述新ASCII码的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述新ASCII码序列进行分组。
可选的,所述第二获取模块具体用于将依次获取的每组编码结果中的首个编码结果排列为第一条编码序列,将依次获取的每组编码结果中的第二个编码结果排列为第二条编码序列,将依次获取的每组编码结果中的第三个编码结果排列为第三条编码序列。
本发明实施例还提供一种数据解码装置,包括:
重组模块,用于对三个待解码数据序列进行重组,生成待解码数据组序列;
解码模块,用于采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;
获取模块,用于根据解码结果获取原始数据。
可选的,所述重组模块包括:
提取子模块,用于依次提取三个所述待解码数据序列的首个待解码数据;
删除子模块,用于删除所述待解码数据序列中当前提取的待解码数据;
重组子模块,用于将当前提取的三个所述待解码数据重组为一个待解码数据组,并返回至依次提取三个所述待解码数据序列的首个待解码数据的步骤。
可选的,所述解码模块具体用于根据公式:
Figure BDA0002282572480000051
依次对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据,
Figure BDA0002282572480000052
为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据组中的第二个解码结果,z为该数据组中的第三个解码结果。
可选的,所述获取模块包括:
获取子模块,用于按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;
判断子模块,用于判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的新ASCII码序列获取所述原始数据;若否,则根据所述ASCII码序列获取所述原始数据。
本发明实施例还提供一种数据编码设备,包括:处理器,存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的数据编码方法。
本发明实施例还提供一种数据解码设备,包括:处理器,存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的数据解码方法。
本发明实施例还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的数据编码方法的步骤或数据解码方法的步骤。
本发明的上述技术方案至少具有如下有益效果:
本发明实施例的数据编码方法,通过首先获取待编码数据的ASCII码序列,然后根据预设编码规则对ASCII码序列进行编码,简化了编码过程的运算,避免使用到大量的位运算等操作,最后对编码结果进行分组,获得多条编码序列,实现了将一条待编码数据编码为多条编码序列,并分别存储,提高了编码结果的安全性。
附图说明
图1为本发明实施例的数据编码方法的基本步骤示意图;
图2为本发明实施例的数据解码方法的基本步骤示意图;
图3为本发明实施例的数据编码装置的基本组成示意图;
图4为本发明实施例的数据解码装置的基本组成示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有技术中的数据编码过程复杂且编码结果安全性低的问题,提供了一种数据编码方法、解码方法及装置,简化了编码过程且将待编码数据编码为多条编码序列,提高了编码结果的安全性。
请参阅图1,为本发明实施例的数据编码方法的基本步骤示意图,所述数据编码方法包括:
步骤S101,获取待编码数据的ASCII码序列;
众所周知,无论待编码的数据源是数字、字母、特殊符号或是控制字符,都可以将数据所包含的每一个字符转化成一个对应的ASCII码,转化后的数据为十进制的0~255的数字。例如,原始数据“CMCC2019”被编码后的数据为“67 77 67 67 50 48 49 57”,原始数据“CMIOT2020”编码后数据为“67 77 73 79 84 20 48 50 48”。
步骤S102,采用预设编码规则对所述ASCII码序列进行编码;
本步骤中,采用所述预设编码规则对所述ASCII码进行编码,使得编码过程不依赖任何介质,且能够适应各种使用环境,简化了解码过程。
步骤S103,对编码结果进行分组,获得多条编码序列。
本步骤,通过对编码结果进行分组,实现了将一条待编码数据编码为多条编码序列,从而实现了编码结果的分别存储和传输,提高了数据的安全性。
本发明实施例的数据编码方法,通过采用预设编码规则对所述ASCII码序列进行编码简化了编码过程,且编码过程不依赖任何介质,从而使得编码过程能够适应于不同的环境;通过对编码结果进行分组,获得多条编码序列,实现了编码结果的分别存储和分别传输,提高了数据的安全性。
可选的,步骤S102,采用预设编码规则对所述ASCII码序列进行编码,包括:
首先,以每三个ASCII码为一组,对所述ASCII码序列进行分组;
具体的,本步骤按照ASCII码序列中的ASCII码顺序对各ASCII码进行分组,即从ASCII码序列的首个ASCII码开始或从ASCII码序列的最后一个ASCII码开始,依次将每三个ASCII码分为一组。
其次,采用预设编码转换关系,依次对每组所述ASCII码进行编码。
具体的,在编码过程中,以一组ASCII码(三个ASCII码)为一个编码单元,对ASCII码序列进行编码。
优选地,所述预设编码转换关系为:
Figure BDA0002282572480000071
其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组ASCII码编码后的第二个编码结果,
Figure BDA0002282572480000072
为该组ASCII码编码后的第三个编码结果,即:(x,y,z)为一组待编码数据组,(r,θ,
Figure BDA0002282572480000073
)为所述待编码数据组的编码结果。
本发明实施例中将每组中的三个ASCII码看作为一个空间点的直角坐标系中的坐标,其中,第一个ASCII码为该点的x轴的坐标,第二个ASCII码为该点的y轴的坐标,第三个ASCII码为该点的z轴的坐标,所述预设编码转换关系的原理为将直角坐标系转换为球坐标系,即:编码结果为该空间点在一个球坐标系中的坐标。
可选的,以每三个ASCII码为一组,对所述ASCII码序列进行分组的步骤包括:
获取所述ASCII码序列中包含的ASCII码数量;
判断所述ASCII码数量是否为三的整数倍,若是,则自所述ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII码序列进行分组;若否,则在所述ASCII码序列中的首个ASCII码之前或者最后一个ASCII码之后增加至少一个补齐因子,使增加所述补齐因子之后的新ASCII码序列的ASCII码数量为三的整数倍,并自所述新ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述新ASCII码序列进行分组。
本步骤用于在所述ASCII码序列中包含的ASCII码数量不为三的整数倍时,使得依序以三个ASCII码为一组对所述ASCII码序列进行分组时,最后一组ASCII码只包含一个或两个ASCII码,导致无法按照所述预设编码规则进行编码,因此,需要在所述ASCII码序列中的首个ASCII码之前或最后一个ASCII码之后增加补齐因子,使增加后的新ASCII码序列中包含的ASCII码数量为三的整数倍。
需要说明的是,由于ASCII码为一个0~255的十进制数字,为了避免所述补齐因子对原始数据产生混淆,本发明实施例中的补齐因子优选为大于255的三位十进制数字,如:256。
仍以前述例子为例,自所述ASCII码序列的首个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII码序列进行分组的实现方式可以为如表1所示。
表1
原始数据 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
由于所述ASCII码为一个0~255的十进制数字,补齐因子优选256,在包含两个补齐因子时,编码后的r值为最大,即r的最大值为442.828409206,另外,编码后的θ和
Figure BDA0002282572480000091
为两个夹角,都小于90,因此,编码后的数字均不会越界,即:不会超过常见浮点型数据类型(如:float、double)的最大存储值另外,采用本发明实施例的数据编码方法对数据进行编码,编码后的数据为浮点型,不会产生不可见(不可打印)字符。
可选的,步骤S103,对编码结果进行分组,获得多条编码序列,包括:
将依次获取的每组编码结果中的首个编码结果排列为第一条编码序列,将依次获取的每组编码结果中的第二个编码结果排列为第二条编码序列,将依次获取的每组编码结果中的第三个编码结果排列为第三条编码序列。
优选地,本发明实施例的编码结果中,第一条编码序列为r值序列,第二条编码序列为θ值序列,第三条编码序列为
Figure BDA0002282572480000092
为值序列。
本发明实施例的数据编码方法,通过首先对所述ASCII码序列依序以三个ASCII码为一组进行分组,然后采用所述预设编码转换关系(直角坐标转换为球坐标)依次对每组所述ASCII码进行编码,获得编码结果,最终按照分组顺序将每组编码结果中的首个编码结果组合为第一条编码序列,将每组编码结果中的第二个编码结果组合为第二条编码序列,将每组编码结果中的第三个编码结果组合为第三条编码序列,避免编码过程中使用大量的位运算等操作,简化了编码过程;避免了编码导致产生不可见字符;实现了分布式数据存储、拆分式数据传输以及分别对多条编码序列进行其他加密算法或编码算法,提高了数据安全性。
请参阅图2,为本发明实施例的数据解码方法的基本步骤示意图,所述数据解码方法包括:
步骤S201,对三个待解码数据序列进行重组,生成待解码数据组序列;
本步骤具体用于将三个所述待解码数据序列重组为适用于预设解码规则的多个待解码数据组,以便于采用所述预设解码规则进行解码。
本发明实施例中的三个待解码数据序列中,第一条待解码数据序列为r值序列,第二条待解码数据序列为θ值序列,第三条待解码数据序列为
Figure BDA0002282572480000104
值序列。
步骤S202,采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;
本步骤中,采用所述预设解码规则对所述待解码数据进行解码,使得解码过程不依赖任何介质,且能够适应各种使用环境,简化了解码过程。
步骤S203,根据解码结果获取原始数据。
本发明实施例的数据解码方法为与本发明实施例的数据编码方法相对应的解码过程,通过采用预设解码规则对待解码数据进行解码,简化了解码过程,且解码过程不依赖任何介质,从而使得解码过程能够适用于不同的环境。
可选的,步骤S201,对三个待解码数据序列进行重组,生成待解码数据组序列,包括:
依次提取三个所述待解码数据序列的首个待解码数据;
删除所述待解码数据序列中当前提取的待解码数据;
将当前提取的三个所述待解码数据重组为一个待解码数据组,并返回至依次提取三个所述待解码数据序列的首个待解码数据的步骤。
本步骤用于将r值序列,θ值序列和
Figure BDA0002282572480000105
值序列进行重组,得到多组待解码数据,其中,每组待解码数据的格式为(r,θ,
Figure BDA0002282572480000106
)。
可选的,步骤S202,采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码的步骤包括:
根据公式:
Figure BDA0002282572480000101
对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据,
Figure BDA0002282572480000102
为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据组中的第二个解码结果,z为该数据组中的第三个解码结果,即:(r,θ,
Figure BDA0002282572480000103
)为一组待解码数据组,(x,y,z)为所述待解码数据组的解码结果。
本发明实施例的所述预设解码规则的原理为:将球坐标系中的坐标转化为直角坐标系中的坐标。
可选的,步骤S203,根据解码结果获取原始数据,包括:
按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;
举例而言,若待解码数据组为(r1θ1
Figure BDA0002282572480000111
)、(r2θ2
Figure BDA0002282572480000112
)、…、(rnθn
Figure BDA0002282572480000113
),则对应的解码结果依次为(x1 y1 z1)、(x2 y2 z2)、…、(xn yn zn),排序后的解码结果为:x1、y1、z1、x2、y2、z2、…、xn、yn、zn
判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的新ASCII码序列获取所述原始数据;若否,则根据所述ASCII码序列获取所述原始数据。
优选地,所述预设数据为256,本步骤具体可以为判断所述ASCII码序列中的最后两个ASCII码或前两个ASCII码是否为所述预设补齐因子256,若是,则说明在编码时引入了补齐因子,所述补齐因子并不是原始数据,因此,需要删除所述补齐因子。
请参阅图3,为本发明实施例的数据编码装置的基本结构示意图,所述数据编码装置包括:
第一获取模块301,用于获取待编码数据的ASCII码序列;
编码模块302,用于采用预设编码规则对所述ASCII码序列进行编码;
第二获取模块303,用于对编码结果进行分组,获得多条编码序列。
本发明实施例的数据编码装置中,所述编码模块302包括:
分组子模块,用于以每三个ASCII码为一组,对所述ASCII码序列进行分组;
编码子模块,用于采用预设编码转换关系,依次对每组所述ASCII码进行编码。
本发明实施例的数据编码装置中,所述预设编码转换关系为:
Figure BDA0002282572480000121
其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组ASCII码编码后的第二个编码结果,
Figure BDA0002282572480000122
为该组ASCII码编码后的第三个编码结果。
本发明实施例的数据编码装置中,所述分组子模块包括:
获取单元,用于获取所述ASCII码序列中包含的ASCII码数量;
判断单元,用于判断所述ASCII码数量是否为三的整数倍,若是,则自所述ASCII码序列的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述ASCII码序列进行分组;若否,则在所述ASCII码序列中的首个ASCII码之前或者最后一个ASCII码之后增加至少一个补齐因子,使增加所述补齐因子之后的新ASCII码序列的ASCII码数量为三的整数倍,并自所述新ASCII码的首个ASCII码或最后一个ASCII码开始,依次以每三个ASCII码为一组,对所述新ASCII码序列进行分组。
本发明实施例的数据编码装置中,所述第二获取模块具体用于将依次获取的每组编码结果中的首个编码结果排列为第一条编码序列,将依次获取的每组编码结果中的第二个编码结果排列为第二条编码序列,将依次获取的每组编码结果中的第三个编码结果排列为第三条编码序列。
请参阅图4,为本发明实施例的数据解码装置的基本结构示意图,所述数据解码装置包括:
重组模块401,用于对三个待解码数据序列进行重组,生成待解码数据组序列;
解码模块402,用于采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;
获取模块403,用于根据解码结果获取原始数据。
本发明实施例的数据解码装置中,所述重组模块401包括:
提取子模块,用于依次提取三个所述待解码数据序列的首个待解码数据;
删除子模块,用于删除所述待解码数据序列中当前提取的待解码数据;
重组子模块,用于将当前提取的三个所述待解码数据重组为一个待解码数据组,并返回至依次提取三个所述待解码数据序列的首个待解码数据的步骤。
本发明实施例的数据解码装置中,所述解码模块402具体用于根据公式:
Figure BDA0002282572480000131
对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据,
Figure BDA0002282572480000132
为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据组中的第二个解码结果,z为该数据组中的第三个解码结果。
本发明实施例的数据解码装置中,所述获取模块403包括:
获取子模块,用于按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;
判断子模块,用于判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的ASCII码序列获取所述原始数据;若否,则根据所述ASCII码序列获取所述原始数据。
本发明实施例还提供一种数据编码设备,包括:处理器,存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的数据编码方法。
本发明实施例还提供一种数据解码设备,包括:处理器,存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的数据解码方法。
本发明实施例还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的数据编码方法的步骤或数据解码方法的步骤。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (11)

1.一种数据编码方法,其特征在于,包括:
获取待编码数据的ASCII码序列;
采用预设编码规则对所述ASCII码序列进行编码;
对编码结果进行分组,获得多条编码序列。
2.根据权利要求1所述的数据编码方法,其特征在于,采用预设编码规则对所述ASCII码序列进行编码的步骤包括:
以每三个ASCII码为一组,对所述ASCII码序列进行分组;
采用预设编码转换关系,依次对每组所述ASCII码进行编码。
3.根据权利要求2所述的数据编码方法,其特征在于,所述预设编码转换关系为:
Figure FDA0002282572470000011
其中,x为一组ASCII码中的首个ASCII码,y为该组ASCII码中的第二个ASCII码,z为该组ASCII码中的第三个ASCII码,r为该组ASCII码编码后的首个编码结果,θ为该组ASCII码编码后的第二个编码结果,
Figure FDA0002282572470000012
为该组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所述的数据解码方法,其特征在于,采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码的步骤包括:
根据公式:
Figure FDA0002282572470000021
依次对每一数据组进行解码;其中,r为该数据组中的首个数据,θ为该数据组中的第二个数据,
Figure FDA0002282572470000022
为该数据组中的第三个数据,x为该数据组中的第一个解码结果,y为该数据组中的第二个解码结果,z为该数据组中的第三个解码结果。
9.根据权利要求7所述的数据解码方法,其特征在于,根据解码结果获取原始数据的步骤包括:
按照所述待解码数据组的重组顺序,对所述解码结果排序,获取一个ASCII码序列;
判断所述ASCII码序列中的数据是否包含预设补齐因子,若是,则删除所述预设补齐因子,并根据删除所述预设补齐因子之后的新ASCII码序列获取所述原始数据;若否,则根据所述ASCII码序列获取所述原始数据。
10.一种数据编码装置,其特征在于,包括:
第一获取模块,用于获取待编码数据的ASCII码序列;
编码模块,用于采用预设编码规则对所述ASCII码序列进行编码;
第二获取模块,用于对编码结果进行分组,获得多条编码序列。
11.一种数据解码装置,其特征在于,包括:
重组模块,用于对三个待解码数据序列进行重组,生成待解码数据组序列;
解码模块,用于采用预设解码规则对所述待解码数据组序列中的各待解码数据组依次进行解码;
获取模块,用于根据解码结果获取原始数据。
CN201911147354.8A 2019-11-21 2019-11-21 一种数据编码方法、解码方法及装置 Pending CN112825494A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911147354.8A CN112825494A (zh) 2019-11-21 2019-11-21 一种数据编码方法、解码方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911147354.8A CN112825494A (zh) 2019-11-21 2019-11-21 一种数据编码方法、解码方法及装置

Publications (1)

Publication Number Publication Date
CN112825494A true CN112825494A (zh) 2021-05-21

Family

ID=75907553

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911147354.8A Pending CN112825494A (zh) 2019-11-21 2019-11-21 一种数据编码方法、解码方法及装置

Country Status (1)

Country Link
CN (1) CN112825494A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6396921B1 (en) * 1997-11-07 2002-05-28 Nortel Networks Limited Method and system for encoding and decoding typographic characters
CN103152708A (zh) * 2011-11-02 2013-06-12 通用汽车有限责任公司 使用二进制数据的文本编码进行车辆远程信息处理通信
CN105391514A (zh) * 2014-09-05 2016-03-09 北京奇虎科技有限公司 字符编码解码方法及装置
CN105790853A (zh) * 2014-12-26 2016-07-20 北京奇虎科技有限公司 一种声波传输字符数据的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6396921B1 (en) * 1997-11-07 2002-05-28 Nortel Networks Limited Method and system for encoding and decoding typographic characters
CN103152708A (zh) * 2011-11-02 2013-06-12 通用汽车有限责任公司 使用二进制数据的文本编码进行车辆远程信息处理通信
CN105391514A (zh) * 2014-09-05 2016-03-09 北京奇虎科技有限公司 字符编码解码方法及装置
CN105790853A (zh) * 2014-12-26 2016-07-20 北京奇虎科技有限公司 一种声波传输字符数据的方法及装置

Similar Documents

Publication Publication Date Title
CN105684316B (zh) 一种Polar码编码方法、装置
CN103368582A (zh) 数据编码及译码方法与装置
EP3484126B1 (en) Method and apparatus for carrying identifier information
US11342945B2 (en) Method and apparatus for processing rate matching of polar codes
CN112152634B (zh) 分块压缩编码方法、装置、计算机设备及可读存储介质
CN1937582B (zh) 待压缩数据的预处理方法以及压缩数据的传输方法
CN107347000B (zh) 一种基于arm的数字喷泉码的编译码实现方法
CN110602498B (zh) 一种自适应有限状态熵编码的方法
CN101345952B (zh) 客户身份识别卡的数据存储、读取方法、装置及系统
JP2012085274A (ja) テキストをマトリクスコードシンボルに符号化するコンピュータ実行方法、マトリクスコードシンボルを復号化するコンピュータ実行方法、テキストをマトリクスコードシンボルに符号化するためのエンコーダ、およびマトリクスコードシンボルを復号化するためのデコーダ
CN112825494A (zh) 一种数据编码方法、解码方法及装置
CN104468022A (zh) 一种传输格式组合的译码方法及装置
CN114500670B (zh) 一种编码压缩方法、解码方法及装置
CN115795495A (zh) 基于改进base64算法的数据保护、解密方法和系统
CN113922852B (zh) 码本确定方法、装置、电子设备及计算机可读存储介质
CN110445582B (zh) 一种编码交织方法、系统、装置及计算机可读存储介质
EP4273711A3 (en) Efficient encoding methods
CN102136878B (zh) 一种速率匹配实现方法和系统
RU2718224C1 (ru) Перестановочный декодер с системой быстрых матричных преобразований
CN111950233A (zh) 扫码识别方法及装置、电子设备、可读存储介质
Arıkan et al. Two-dimensional polar coding
CN115208667B (zh) 通过混合编程实现芯片与文件进行双重加密解密方法
CN116366074B (zh) 基于二元扩域及提高满度比的lt码混合编解码方法及系统
CN111404557B (zh) 一种快速译码方法、设备及存储设备
KR20110061680A (ko) 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20210521

RJ01 Rejection of invention patent application after publication