在有限域GF(2^n)下求多项式乘法 Python代码实现

您所在的位置:网站首页 python怎么算乘法 在有限域GF(2^n)下求多项式乘法 Python代码实现

在有限域GF(2^n)下求多项式乘法 Python代码实现

2023-08-14 19:05| 来源: 网络整理| 查看: 265

#在有限域GF(2^n)下求多项式乘法 Python代码实现 一、了解运算规则 运算规则 运算规则 二、例题展示 例题 三、直接上代码(代码有详细备注,不做一一解释)

def yxydxscf(a,b,c): # 不可约多项式系数模二运算 c = str(c)[1:] # 不够8位左补零 g = str(a).rjust(8, '0') h = str(b).rjust(8, '0') k = str(c).rjust(8, '0') # 二进制转十进制 d = int(str(a), 2) # e = int(str(b), 2) f = int(str(k), 2) # 存放g(x)多项式的每一项二进制表示 X = [] if h[0] == '1': x = ['10000000'] X += x if h[1] == '1': x1 = ['01000000'] X += x1 if h[2] == '1': x2 = ['00100000'] X += x2 if h[3] == '1': x3 = ['00010000'] X += x3 if h[4] == '1': x4 = ['00001000'] X += x4 if h[5] == '1': x5 = ['00000100'] X += x5 if h[6] == '1': x6 = ['00000010'] X += x6 if h[7] == '1': x7 = ['00000001'] X += x7 # 存放g(x)每一项与f(x)的乘法运算后十进制结果 E = [] for i in range(len(X)): # 求g(x)每一项与f(x)的乘法运算 G = X[i] # print(G) e1 = int(G, 2) d1 = d while e1 != 0: if e1 == 1: E += [d1] break # print(E) if g[0] == '1': d1 = d1


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3