CN109802824A - 一种移位处理的方法、装置、计算机存储介质及终端 - Google Patents

一种移位处理的方法、装置、计算机存储介质及终端 Download PDF

Info

Publication number
CN109802824A
CN109802824A CN201811467815.5A CN201811467815A CN109802824A CN 109802824 A CN109802824 A CN 109802824A CN 201811467815 A CN201811467815 A CN 201811467815A CN 109802824 A CN109802824 A CN 109802824A
Authority
CN
China
Prior art keywords
shift operation
byte
grouping
shift
sequence
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
CN201811467815.5A
Other languages
English (en)
Other versions
CN109802824B (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.)
Datang Microelectronics Technology Co Ltd
Original Assignee
Datang Microelectronics 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 Datang Microelectronics Technology Co Ltd filed Critical Datang Microelectronics Technology Co Ltd
Priority to CN201811467815.5A priority Critical patent/CN109802824B/zh
Publication of CN109802824A publication Critical patent/CN109802824A/zh
Application granted granted Critical
Publication of CN109802824B publication Critical patent/CN109802824B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

一种移位处理的方法、装置、计算机存储介质及终端,包括:对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。本发明实施例提升了移位处理的运算效率,提高了线性运算的处理效率。

Description

一种移位处理的方法、装置、计算机存储介质及终端
技术领域
本文涉及但不限于加解密技术,尤指一种移位处理的方法、装置、计算机存储介质及终端。
背景技术
SM4算法是相关技术中的一种对称密码算法,是无线标准中使用的分组加密算法;SM4算法中的数据按照16字节长度分组完成加解密运算。运算过程中需要用到大量的移位运算,而使用该算法的场景一般都是要求高性能的。
目前,SM4算法进行移位运算时,一般采用直接移位操作,运算效率低,当运算量较大时表现尤为明显。如何提高SM4算法中的移位运算效率,成为需要解决的一个问题。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本发明实施例提供一种移位处理的方法、装置、计算机存储介质及终端,能够提升移位运算的处理效率。
本发明实施例提供了一种移位处理的方法,包括:
对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;
对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。
可选的,所述分别根据移位位数对字中包含的比特进行移位的移位运算进行分组之前,所述方法还包括:
将所述线性运算的加密数据,以字长为单位区分确定一个或以上所述字。
可选的,所述根据移位位数对字中包含的比特的移位运算进行分组包括:
对进行移位运算分组的字,对各所述移位运算的移位位数与字节比特数进行求余;
当移位方向相同时,将求余结果相同的移位运算划分为一分组;当移位方向不同时,将求余结果两两相加和为字节比特数的移位运算划分为一分组。
可选的,所述根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果包括:
对当前分组的移位运算,分别确定分组的参考移位运算的移位位数和剩余的各移位运算的移位位数的差值;
根据确定的分组的字节参考排序、及确定的各移位运算与参考移位运算的所述差值,确定各移位运算结果的字节排序。
可选的,所述方法还包括:
将所述字节参考排序添加到预设的缓存寄存器中,以在确定各移位运算结果的字节排序时,从所述缓存寄存器中根据所述差值进行字节读取。
另一方面,本发明实施例还提供一种移位处理的装置,包括:分组单元、参考排序单元和确定单元;其中,
分组单元用于:对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;
参考排序单元用于:对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
确定单元用于:对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。
可选的,所述装置还包括区分单元,用于:
将所述线性运算的加密数据,以字长为单位区分确定一个或以上所述字。
可选的,所述分组单元具体用于:
对进行移位运算分组的字,对各所述移位运算的移位位数与字节比特数进行求余;
当移位方向相同时,将求余结果相同的移位运算划分为一分组;当移位方向不同时,将求余结果两两相加和为字节比特数的移位运算划分为一分组。
可选的,所述确定单元具体用于:
对当前分组的移位运算,分别确定分组的参考移位运算的移位位数和剩余的各移位运算的移位位数的差值;
根据确定的分组的字节参考排序、及确定的各移位运算与参考移位运算的所述差值,确定各移位运算结果的字节排序。
可选的,所述装置还包括寄存器单元,用于:
缓存所述字节参考排序,以在确定单元确定各移位运算结果的字节排序时,根据所述差值进行字节读取。
再一方面,本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行上述移位处理的方法。
还一方面,本发明实施例还提供一种终端,包括:存储器和处理器;其中,
处理器被配置为执行存储器中的程序指令;
程序指令在处理器读取执行以下操作:
对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;
对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。
与相关技术相比,本申请技术方案包括:对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。本发明实施例提升了移位处理的运算效率,提高了线性运算的处理效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明实施例移位处理的方法的流程图;
图2为本发明实施例移位处理的装置的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1为本发明实施例移位处理的方法的流程图,如图1所示,包括:
步骤101、对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;
需要说明的是,本发明实施例可以仅对线性运算的所有字,均采用本发明实施例方法进行处理,也可以对部分字,采用本发明实施例方法进行处理,在此不做赘述。
可选的,分别根据移位位数对字中包含的比特进行移位的移位运算进行分组之前,本发明实施例方法还包括:
将所述线性运算的加密数据,以字长为单位区分确定一个或以上所述字。
可选的,本发明实施例根据移位位数对字中包含的比特的移位运算进行分组包括:
对进行移位运算分组的字,对各所述移位运算的移位位数与字节比特数进行求余;
当移位方向相同时,将求余结果相同的移位运算划分为一分组;当移位方向不同时,将求余结果两两相加和为字节比特数的移位运算划分为一分组。
需要说明的是,本发明实施例线性运算包括L运算和L'运算;L运算和L'运算是包含16个字节(四个字)的移位运算;本发明实施例对确定的采用本发明实施例方法进行移位处理的每一个字,均分别进行求余和分组处理。
可选的,本发明实施例,当本领域技术人员知道移位位数时,可以通过预先设定的交互界面进行人为分组,分组依据为两两移位运算的移位差值为一个字节长度,即8个比特时,将两个移位运算划分为一组;当L运算和L'运算公式确定时,分组可以直接输入确定,而不需要通过计算机进行运算。
步骤102、对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
可选的,本发明实施例根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果包括:
对当前分组的移位运算,分别确定分组的参考移位运算的移位位数和剩余的各移位运算的移位位数的差值;
根据确定的分组的字节参考排序、及确定的各移位运算与参考移位运算的所述差值,确定各移位运算结果的字节排序。
需要说明的是,确定的字节排序即为移位运算结果。
步骤103、对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。
可选的,本发明实施例方法还包括:将所述字节参考排序添加到预设的缓存寄存器中,以在确定各移位运算结果的字节排序时,从所述缓存寄存器中根据所述差值进行字节读取。
可选的,本发明实施例确定移位运算的移位运算结果后,根据移位运算结构进行线性运算。
与相关技术相比,本申请技术方案包括:对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。本发明实施例提升了移位处理的运算效率,提高了线性运算的处理效率。
图2为本发明实施例移位处理的装置的结构框图,如图2所示,包括:分组单元、参考排序单元和确定单元;其中,
分组单元用于:对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;
需要说明的是,本发明实施例可以仅对线性运算的所有字,均采用本发明实施例方法进行处理,也可以对部分字,采用本发明实施例方法进行处理,在此不做赘述。
参考排序单元用于:对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
确定单元用于:对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。
可选的,本发明实施例装置还包括区分单元,用于:
将所述线性运算的加密数据,以字长为单位区分确定一个或以上所述字。
可选的,本发明实施例装置分组单元具体用于:
对进行移位运算分组的字,对各所述移位运算的移位位数与字节比特数进行求余;
当移位方向相同时,将求余结果相同的移位运算划分为一分组;当移位方向不同时,将求余结果两两相加和为字节比特数的移位运算划分为一分组。
需要说明的是,本发明实施例线性运算包括L运算和L'运算;L运算和L'运算是包含16个字节(四个字)的移位运算;本发明实施例对确定的采用本发明实施例方法进行移位处理的每一个字,均分别进行求余和分组处理。另外,本发明实施例移位位数根据方向不同,在求余运算时分别设置相应的正号或负号,当求余计算为负数时,将该负数与字节比特数进行求和,可以确定取值为正的求余结果;或者,本发明实施例可以将移位方向不同的移位运算,根据移位运算涉及的字节比特数的长度,表达为相同方向的移位运算后(例如、移位运算涉及字节比特数为8,则移位运算左移1位与右移7位的结果相同),根据转换获得的相同方向的移位运算,确定求余结果是否相同。可选的,本发明实施例,当本领域技术人员知道移位位数时,可以通过预先设定的交互界面进行人为分组,分组依据为两两移位运算的移位差值为一个字节长度,即8个比特时,将两个移位运算划分为一组;当L运算和L'运算公式确定时,分组可以直接输入确定,而不需要通过计算机进行运算。
可选的,本发明实施例装置确定单元具体用于:
对当前分组的移位运算,分别确定分组的参考移位运算的移位位数和剩余的各移位运算的移位位数的差值;
根据确定的分组的字节参考排序、及确定的各移位运算与参考移位运算的所述差值,确定各移位运算结果的字节排序。
需要说明的是,确定的字节排序即为移位运算结果。
可选的,本发明实施例装置还包括寄存器单元,用于:缓存所述字节参考排序,以在确定单元确定各移位运算结果的字节排序时,根据所述差值进行字节读取。
可选的,本发明实施例确定移位运算的移位运算结果后,根据移位运算结构进行线性运算。
与相关技术相比,本申请技术方案包括:对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。本发明实施例提升了移位处理的运算效率,提高了线性运算的处理效率。
本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行上述移位处理的方法。
本发明实施例还提供一种终端,包括:存储器和处理器;其中,
处理器被配置为执行存储器中的程序指令;
程序指令在处理器读取执行以下操作:
对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;
对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。
以下通过应用示例对本发明实施例方法进行清楚详细的说明,应用示例仅用于陈述本发明,并不用于限定本发明的保护范围。
应用示例
为使本发明应用示例详尽清楚,以下对本发明应用示例涉及的相关定义进行说明,本发明应用示例将中的元素称为字,将中的元素称为字节,中的元素成为比特(bit)。
本发明应用示例涉及比特异或;以<<<i表示32比特循环左移i位;以>>>i表示32比特循环右移i位;本发明应用示例涉及L运算和L'运算;其中,
本发明应用示例每加密16字节的数据,需要调用32次L运算:
假设输入为则:
本发明应用示例每加密16字节的数据,需要调用32次L'运算:
假设输入为则:
本发明应用实施例L运算和L'运算,每进行一次SM4运算各需调用32次,本发明应用示例以L运算和L'运算中的移位运算进行简要说明,假设本发明应用示例通过Xi、Yi、Zi、Wi分别表示B中比特以后处理后包含的字节,本发明应用示例设定 基于上述设定,B中包含的比特排序为:b0b1b2b3b4b5b6b7、b8b9b10b11b12b13b14b15、b16b17b18b19b20b21b22b23、b24b25b26b27b28b29b30b31;本发明应用示例为便于查看,在每一个字节之间通过顿号进行显示区分;对B进行左移24位比特处理后的比特排序为:b24b25b26b27b28b29b30b31、b0b1b2b3b4b5b6b7、b8b9b10b11b12b13b14b15、b16b17b18b19b20b21b22b23;对B进行左移2位比特的处理后的比特排序为:b2b3b4b5b6b7b8b9、b10b11b12b13b14b15b16b17、b18b19b20b21b22b23b24b25、b26b27b28b29b30b31b0b1;对B进行左移10位比特的处理后的比特排序为:b10b11b12b13b14b15b16b17、b18b19b20b21b22b23b24b25、b26b27b28b29b30b31b0b1、b2b3b4b5b6b7b8b9;对B进行左移18位比特的处理后的比特排序为:
b18b19b20b21b22b23b24b25、b10b11b12b13b14b15b16b17、b18b19b20b21b22b23b24b25、b26b27b28b29b30b31b0b1;对B进行右移1位比特的处理后的比特排序为:b31b0b1b2b3b4b5b6、b7b8b9b10b11b12b13b14、b15b16b17b18b19b20b21b22、b23b24b25b26b27b28b29b30;对B进行左移23位比特的处理后的比特排序为:b23b24b25b26b27b28b29b30、b31b0b1b2b3b4b5b6、b7b8b9b10b11b12b13b14、b15b16b17b18b19b20b21b22;对B进行右移3位比特的处理后的比特排序为:b29b30b31b0b1b2b3b4、b5b6b7b8b9b10b11b12、b13b14b15b16b17b18b19b20、b21b22b23b24b25b26b27b28;对B进行左移13位比特的处理后的比特排序为:b13b14b15b16b17b18b19b20、b21b22b23b24b25b26b27b28、b29b30b31b0b1b2b3b4、b5b6b7b8b9b10b11b12
参照上述比特排序,假设B=X1X2X3X4,则B<<<24=X2X3X4X1;假设B<<<2=Y1Y2Y3Y4,则B<<<10=Y2Y3Y4Y1,B<<<18=Y3Y4Y1Y2;假设B>>>1=Z1Z2Z3Z4,则B<<<23=Z4Z1Z2Z3;假设B>>>3=W1W2W3W4,则B<<<13=W3W4W1W2
本发明应用示例,对分别根据移位位数对字中包含的比特的移位运算进行分组,可选的,本发明应用示例对进行移位运算分组的字,对各所述移位运算的移位位数与字节比特数进行求余;将求余结果相同的移位运算划分为一分组。
本发明应用示例对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
本发明应用示例在缓存寄存器中缓存字节参考排序,假设B=X1X2X3X4,B<<<24=X2X3X4X1,通过缓存字节X1、X2、X3、X4,可减少移位次数24次;B<<<2=Y1Y2Y3Y4,B<<<10=Y2Y3Y4Y1,B<<<18=Y3Y4Y1Y2,通过缓存字节Y1、Y2、Y3、Y4,可减少移位次数(10+18)=28次;B>>>1=Z1Z2Z3Z4,B<<<23=Z4Z1Z2Z3,通过缓存字节Z1、Z2、Z3、Z4,可减少移位次数(23-1)=22次;基于Z1Z2Z3Z4得到W1W2W3W4,需要移位2次,所以B>>>3=W1W2W3W4,B<<<13=W3W4W1W2,通过缓存字节Z1、Z2、Z3、Z4、W1、W2、W3、W4,可减少移位次数(13-2)=11次;本发明应用示例每对16字节的数据进行加密/解密,共减少移位次数32*(24+28+22+11)=2720次。基于工作频率为6兆每比特(Mbps)的8位中央处理器(CPU)卡实测,性能可以提升约28倍。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的每个模块/单元可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储于存储器中的程序/指令来实现其相应功能。本发明不限制于任何特定形式的硬件和软件的结合。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (12)

1.一种移位处理的方法,其特征在于,包括:
对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;
对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。
2.根据权利要求1所述的方法,其特征在于,所述分别根据移位位数对字中包含的比特进行移位的移位运算进行分组之前,所述方法还包括:
将所述线性运算的加密数据,以字长为单位区分确定一个或以上所述字。
3.根据权利要求1所述的方法,其特征在于,所述根据移位位数对字中包含的比特的移位运算进行分组包括:
对进行移位运算分组的字,对各所述移位运算的移位位数与字节比特数进行求余;
当移位方向相同时,将求余结果相同的移位运算划分为一分组;当移位方向不同时,将求余结果两两相加和为字节比特数的移位运算划分为一分组。
4.根据权利要求1~3任一项所述的方法,其特征在于,所述根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果包括:
对当前分组的移位运算,分别确定分组的参考移位运算的移位位数和剩余的各移位运算的移位位数的差值;
根据确定的分组的字节参考排序、及确定的各移位运算与参考移位运算的所述差值,确定各移位运算结果的字节排序。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
将所述字节参考排序添加到预设的缓存寄存器中,以在确定各移位运算结果的字节排序时,从所述缓存寄存器中根据所述差值进行字节读取。
6.一种移位处理的装置,其特征在于,包括:分组单元、参考排序单元和确定单元;其中,
分组单元用于:对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;
参考排序单元用于:对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
确定单元用于:对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括区分单元,用于:
将所述线性运算的加密数据,以字长为单位区分确定一个或以上所述字。
8.根据权利要求6所述的装置,其特征在于,所述分组单元具体用于:
对进行移位运算分组的字,对各所述移位运算的移位位数与字节比特数进行求余;
当移位方向相同时,将求余结果相同的移位运算划分为一分组;当移位方向不同时,将求余结果两两相加和为字节比特数的移位运算划分为一分组。
9.根据权利要求6~8任一项所述的装置,其特征在于,所述确定单元具体用于:
对当前分组的移位运算,分别确定分组的参考移位运算的移位位数和剩余的各移位运算的移位位数的差值;
根据确定的分组的字节参考排序、及确定的各移位运算与参考移位运算的所述差值,确定各移位运算结果的字节排序。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括寄存器单元,用于:
缓存所述字节参考排序,以在确定单元确定各移位运算结果的字节排序时,根据所述差值进行字节读取。
11.一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1~5中任一项所述的移位处理的方法。
12.一种终端,包括:存储器和处理器;其中,
处理器被配置为执行存储器中的程序指令;
程序指令在处理器读取执行以下操作:
对线性运算中涉及的一个或一个以上字,分别根据移位位数对字中包含的比特的移位运算进行分组;
对同一分组内的移位运算,选择其分组内的任一移位运算作为参考移位运算,对参考移位运算进行移位处理后,将该移位运算结果中字节的排序确定为字节参考排序;
对确定字节参考排序的分组,根据确定的该分组的字节参考排序,确定分组内剩余移位运算的移位运算结果。
CN201811467815.5A 2018-12-03 2018-12-03 一种移位处理的方法、装置、计算机存储介质及终端 Active CN109802824B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811467815.5A CN109802824B (zh) 2018-12-03 2018-12-03 一种移位处理的方法、装置、计算机存储介质及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811467815.5A CN109802824B (zh) 2018-12-03 2018-12-03 一种移位处理的方法、装置、计算机存储介质及终端

Publications (2)

Publication Number Publication Date
CN109802824A true CN109802824A (zh) 2019-05-24
CN109802824B CN109802824B (zh) 2022-07-08

Family

ID=66556386

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811467815.5A Active CN109802824B (zh) 2018-12-03 2018-12-03 一种移位处理的方法、装置、计算机存储介质及终端

Country Status (1)

Country Link
CN (1) CN109802824B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110221807A (zh) * 2019-06-06 2019-09-10 龙芯中科(合肥)技术有限公司 数据移位方法、装置、设备及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102025484A (zh) * 2010-12-17 2011-04-20 北京航空航天大学 一种分组密码加解密方法
EP2715544A1 (en) * 2011-06-03 2014-04-09 Exelis Inc. Method and system for embedded high performance reconfigurable firmware cipher
CN106712930A (zh) * 2017-01-24 2017-05-24 北京炼石网络技术有限公司 一种sm4加密方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102025484A (zh) * 2010-12-17 2011-04-20 北京航空航天大学 一种分组密码加解密方法
EP2715544A1 (en) * 2011-06-03 2014-04-09 Exelis Inc. Method and system for embedded high performance reconfigurable firmware cipher
CN106712930A (zh) * 2017-01-24 2017-05-24 北京炼石网络技术有限公司 一种sm4加密方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110221807A (zh) * 2019-06-06 2019-09-10 龙芯中科(合肥)技术有限公司 数据移位方法、装置、设备及计算机可读存储介质
CN110221807B (zh) * 2019-06-06 2021-08-03 龙芯中科(合肥)技术有限公司 数据移位方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN109802824B (zh) 2022-07-08

Similar Documents

Publication Publication Date Title
CN105843775B (zh) 片上数据划分读写方法、系统及其装置
CN107391527A (zh) 一种基于区块链的数据处理方法及设备
CN104969215B (zh) 具有用于提供蝶形向量处理电路的可编程数据路径的向量处理引擎以及相关的向量处理器、系统和方法
CN105653499B (zh) 用于单指令多数据处理器的高效硬件指令
CN106537330B (zh) 通过使用数据索引化累加器使标量操作并行化的方法和处理器
CN105183764B (zh) 一种数据分页方法及装置
CN105631013B (zh) 生成哈希值的装置和方法
CN110262773A (zh) 一种计算机数据处理方法及装置
EP2273381B1 (en) Simd parallel computer system, simd parallel computing method, and control program
CN110825323A (zh) 浮点数数据的存储、读取方法和计算机可读存储介质
CN109804347A (zh) 提供真随机数的指令
CN108961147A (zh) 一种数据处理方法和装置
CN108733347A (zh) 一种数据处理方法及装置
CN109802824A (zh) 一种移位处理的方法、装置、计算机存储介质及终端
CN103209328A (zh) 多源卫星图像实时在线处理技术方法及装置
US20020161785A1 (en) Method and apparatus for interleaving data streams
CN105830160A (zh) 用于将经屏蔽数据写入到缓冲器的设备及方法
Li et al. Accelerate NDN name lookup using FPGA: Challenges and a scalable approach
CN107798117A (zh) 一种数据存储与读取的方法和装置
CN104714883B (zh) 用于通过动态地分配时间戳计数器来提高跟踪阵列的效率的方法和设备
CN107580015A (zh) 数据处理方法和装置、服务器
CN109979498A (zh) 磁盘视频数据写入、读取的方法及装置
CN107368281A (zh) 一种数据处理方法及装置
CN106954264B (zh) 一种下行物理共享信道pdsch的资源映射方法及系统
CN110427764B (zh) 一种针对主控芯片的数据解密方法

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
GR01 Patent grant
GR01 Patent grant