2 excel中的4位二进制乘法

时间:2013-04-02 22:48:45

标签: excel vba excel-vba bit multiplication

使用excel演示4位x 4位二进制乘法,如下所示:

  1. 将乘数转换为二进制并一次处理一位
  2. 所有其他操作均可以十进制完成。
  3. 上面有关于家庭作业的问题,但是由一位注意力差的老师给了我。谁能让我知道我可以在哪里阅读这个主题?是否有任何书籍(或者最好是指向网页的链接),我可以阅读这些书籍来帮助我?

    image

    这是我到目前为止所拥有的。显然这是错的。我遇到麻烦的是添加产品。我不能简单地使用= sum()因为1 + 1应该等于' 0'随身携带。我该如何实现这一目标?

    欢迎任何建议。提前感谢你。 乔。

1 个答案:

答案 0 :(得分:1)

这里的问题是正确指出的补充 - 但是在所有计算出的单元格中都是错误的而不仅仅是你突出显示的单元格,这只是运气,它是你添加1 + 1的唯一地方。

因此,让我们通过一个在行1和1中添加一对4位二进制数的例子来解决这个问题。 2.第3行有一个临时计算,我们将把结果放在第4行。

最低有效位是最简单的,我们可以使用MOD函数将其限制为2(二进制),如=MOD(D1+D2,2),它将D1和D2中的位相加,并在二进制结果处返回0是0或10和1,它是1或11。

接下来我们可以考虑从不太重要的操作到下一个操作的溢出(或进位)......

我们可以通过计算除以2的整数结果来计算位是否溢出。您可以使用D3计算D列到=INT((D1+D2)/2)的溢出,我们可以填充它。< / p>

最后,我们将附加内容与附加内容进行了整合,因此在C3中,我们可以使用=MOD(C1+C2+D3,2)并再次填充该内容。

使用此功能,您应该能够看到二进制加法如何作为Excel公式工作,并找出您的工作表没有按预期运行的原因。这是整个计算中的一个......

A                   B                   C                   D

1                   1                   1                   1
1                   1                   1                   1
=INT((A1+A2)/2)     =INT((B1+B2)/2)     =INT((C1+C2)/2)     =INT((D1+D2)/2)
=MOD(A1+A2+B3,2)    =MOD(B1+B2+C3,2)    =MOD(C1+C2+D3,2)    =MOD(D1+D2,2)