您的位置:首页 > 其它

复整数乘法的计算方法

2007-11-30 17:42 489 查看
复整数乘法的计算方法
两个复整数乘法的计算公式为
(x1+y1i)*(x2+y2i)=(x1*x2-y1*y2)+(x1*y2+x2*y1)i
上述公式用4次实整数的乘法完成一次复整数乘法。但这是必须的吗?如果存在3次乘法或2次乘法就可以完成两个复整数的乘法运算,如何才能设计出这种奇妙的推算关系呢?
显然,在已知x1*x2, y1*y2以及(x1+x2)*(y1+y2)的情况下,可以导出:
x1*x2-y1*y2=(x1*x2)-(y1*y2)
x1*y2+x2*y1=(x1+x2)*(y1+y2)-(x1*x2)-(y1*y2)
即用3次乘法可以实现两个复整数的乘法。
~~~~~~~~~~~~~~~
能否用两次乘法就完成复整数的乘法呢?
观察下面的式子:
(x1+y1)*(x2+y2)=(x1x2+y1y2)+(x1y2+x2y1) (1)
(x1+y1)*(x2-y2)=(x1x2-y1y2)-(x1y2-x2y1) (2)
(x1-y1)*(x2+y2)=(x1x2-y1y2)+(x1y2-x2y1) (3)
(x1-y1)*(x2-y2)=(x1x2+y1y2)-(x1y2+x2y1) (4)
有(1)、(4),两次乘法操作及一次移位操作(除2)可以得到(x1x2+y1y2)、(x1y2+x2y1);由(2)、(3),两次乘法操作及一次移位操作(除2)可以得到(x1x2-y1y2)、(x1y2-x2y1)。但如何得到(x1x2-y1y2)、(x1y2+x2y1)仍然是一个问题。或者根本不可能用两次乘法操作实现复整数的乘法,但我们又如何来证明这一点呢?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐