模k乘法运算

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

模k乘法运算

模k乘法运算

1、概念

模k乘法是在模k环上的运算,它是一种数论(number theory)的运算,用于计算大数幂模k,k是一个大质数,称为模数。

模k乘法可以用来计算大数幂的模 ,可以节省时间,从而让我们可以计算更大数幂的模。

2、算法

(1) 算法的步骤

算法的步骤如下:

步骤1:给定能被k整除的正整数a和b,以及质数k。

步骤2:令 a2=a mod k,b2=b mod k。

步骤3:计算c2=a2b2mod k。

步骤4:计算c=(a-a2)(b-b2)mod k 。

步骤5:最终的结果 c2+c mod k 。

(2) 算法的步骤详解

步骤1:给定能被k整除的正整数a和b,以及质数k。

这一步需要给出要计算的幂模的两个数,以及质数k,它们的值必须能被k整除,否则结果将会出错。

步骤2:令 a2=a mod k,b2=b mod k。

将a/k取余,得到a2,将b/k取余,得到b2,a2和b2是a和b 除以k之后取余得到的结果。

步骤3:计算c2=a2b2mod k。

将a2和b2求乘积,并将结果模k,获得c2,它代表a和b相乘再模k得到的结果。

步骤4:计算c=(a-a2)(b-b2)mod k 。

这一步需要将a-a2和b-b2的乘积模k,获得c,它代表a和b 相减再相乘模k得到的结果。

步骤5:最终的结果 c2+c mod k 。

将c2和c相加模k,得到最终的结果。

3、实例

设a=105,k=37

步骤1:给定能被k整除的正整数a和b,以及质数k=37。

步骤2:令 a2=105 mod 37=9,b2=b mod k=1。

步骤3:计算c2=a2b2mod k=9*1 mod 37=9。

步骤4:计算c=(a-a2)(b-b2)mod k=(105-9)*(1-1) mod 37=96。

步骤5:最终的结果 c2+c mod k=9+96 mod 37=105。

相关文档
最新文档