使用excel演示4位x 4位二进制乘法如下:
- 将乘法器转换为二进制并一次处理一位
- 所有其他操作都可以十进制完成。
我有上面的作业问题,但它是由一位笔记很差的老师给我的。谁能告诉我在哪里可以阅读该主题?有没有我可以阅读的书籍(或者最好是网页链接)来帮助我?
这就是我到目前为止所拥有的。显然这是错误的。我遇到的麻烦是产品的添加。我不能简单地使用 =sum() 因为它 1+1 应该等于带有进位的 '0'。我该如何实现这一目标?
欢迎任何建议。提前谢谢你。乔。
使用excel演示4位x 4位二进制乘法如下:
我有上面的作业问题,但它是由一位笔记很差的老师给我的。谁能告诉我在哪里可以阅读该主题?有没有我可以阅读的书籍(或者最好是网页链接)来帮助我?
这就是我到目前为止所拥有的。显然这是错误的。我遇到的麻烦是产品的添加。我不能简单地使用 =sum() 因为它 1+1 应该等于带有进位的 '0'。我该如何实现这一目标?
欢迎任何建议。提前谢谢你。乔。
这里的问题是您正确指出的添加 - 但在所有计算的单元格中都是错误的,而不仅仅是您突出显示的单元格,它只是您添加 1+1 的唯一地方。
因此,让我们通过一个示例来解决这个问题,该示例将一对 4 位二进制数添加到第 1 行和第 2 行中。有一个临时计算要放入第 3 行,我们将把结果放入第 4 行。
最低有效位是最简单的,我们可以使用这样的MOD
函数将其限制为基数 2(二进制),该函数=MOD(D1+D2,2)
将 D1 和 D2 中的位相加,并在二进制结果为 0 或 10 时返回 0,在二进制结果为 1 或 11 时返回 1。
接下来我们可以考虑从不太重要的操作到下一个操作的溢出(或进位)......
我们可以通过计算除以 2 的整数结果来计算某个位是否溢出。您可以计算从 D 列到D3
with的溢出=INT((D1+D2)/2)
,我们可以将其填满。
最后,我们将进位与添加相结合,因此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)