原文: A 4-bit Calculator made in cardboard and marble
译者:杰微刊兼职翻译张迪
逻辑
它是什么?
逻辑是一个完全使用纸板、热熔胶和玻璃球做出来的全功能的4位计算器。我和我的小妹妹为了一个科学活动一起做的,它可以加从0到15的数字,可计算的最大数为30。我们从零开始,在当时,我没有发现任何一种计算器是已使用乐高,木材和其他材料的,所以它是一个全新的模式!
为什么?
主要是为了好玩!我想建立一个加法器已经有一段时间了,但我不知道我想怎么做。我想也许使用水系统或只有纸板来制作计算器。在那之后,我的妹妹有一个科学活动,这个活动让他们不得不提出一个科学项目,我帮助他们选择了一个主题。我随机找到一个关于用多米诺骨牌制作计算器的视频,我想,为什么不用玻璃球制作计算器呢?
学到什么?
我的小妹妹已经知道如何使用二进制计数,通过这个项目他们还学习了二进制加法、二进制和十进制转换、逻辑门、基本逻辑电路等等。
我还学会了如何使用周围简单的材料建立简单的逻辑电路。在我的整个项目中,我总是试着用我已经拥有的东西来制作。
它看起来像什么?
哇,你怎么用它?
你把你要输入数字用二进制法进行输入,一个玻璃球是一,没有玻璃球是零。右边的位是最低有效位。在每次计算之前你必须重置计算器的一些部分。然后你移除一些纸板阻止玻璃球滚下来,玻璃球将沿着路径,移动和改变路径,最终到达底部的输出口,再次用二进制的方式给你结果。
这里的一个输入的例子,如果你想添加7加5。
它是如何工作的?
当我们反思如何让逻辑门成为我们所需要的,我们总是以阐述在通常情况下闸门是做什么的为开始。我们做的第一个闸门是ANDgate。
AND gate
AND gate是做什么的呢?基本上:
如果没有玻璃球在里面:没有玻璃球出来;
如果有一个玻璃球在里面:没有玻璃球出来;
如果有两个玻璃球在里面:一个玻璃球出来。
所以我们需要一个系统,如果有两个其他的但没有一个玻璃球出来的情况下,让一个玻璃球通过。
这是我们想出来的。
一个玻璃球:没有结果;
两个玻璃球:一个结果。
XOR(逻辑运算符异域)
XOR更为复杂,因为输入必须在同一精确的时间。
那么我们如何制作XOR模型呢?很简单!
如果你有一个玻璃球,通过;
如果你有两个玻璃球,那么他们应该取消。
在我们想象中,取消将是非常简单的。把路径做的足够让一个玻璃球通过,当到达时玻璃球会互相碰撞,保证每一个玻璃球下降的道路。问题是,它们必须同步的很完美,甚至是在玻璃球反弹的情况下,玻璃球通常也能出去。
我们仍然设法制作出了一个,但它太不可靠了,所以我们决定继续前进,就这样吧,只是让它作为一个原型,因为我们在结束可能不需要它。
Half-Adder
AND和XORgates我们需要16AND gates,16 XOR gates and 4 OR gates 或将使得它太大,我们不需要做所有这些。
考虑到通常情况中gate是方便的,对于Half-Adder它会是这样:
如果有一个玻璃球:让它落在第一输出口;
如果有两个玻璃球:使其中一个落在第二输出口。
实际上并不很难。第一个玻璃球翻转一小块纸板,所以如果再有一个玻璃球来,它会落到一个洞里。第二个玻璃球回落在另一个翻转纸板上,并阻挡了第一个玻璃球。
对于一个玻璃球的情况,你可以看到它从路径1下降。
对于两个玻璃球的情况,你可以看到它从路径2下降。
一个玻璃球开始和,两个玻璃球开始进位。
完整的加法器
一个完整的加法器通常是由两个Half-Adder和一个OR门制作而成。我们很惊讶地看到,我们可以只通过稍微修改我们的Half-Adder就能制作一个完整的加法器。通常情况下,Full-Adder与Half-Adder相同,如果还有第三个玻璃球,那么它应该在路径1下降。
如果有一个玻璃球:让它落在第一输出口;
如果有两个玻璃球:使其中一个落在第二输出口;
如果有三个玻璃球:使其中的一个落在第一输出口,另一个落在第二输出口。
在Half-Adder模型中添加第三个实例真的很容易,实际上只需要补充一个小纸板。我们的全加器看起来很不同的原因是我们将其编辑成为允许第一玻璃球和第二玻璃球之间有更多的时间,从而降低了同步要求。
所以对于一个玻璃球来说,会落在路径1。
对于两个玻璃球来说,其中一个玻璃球会落在路径2。
最后,三个玻璃球的情况下,其中一个玻璃球会落在路径1,另一个玻璃球会落在路径2。
将其组合在一起
现在我们可以制作全加器了,我们可以完成我们的计算器了。我们只需要将它们连接在一起,以便进行到下一个的进位。
存在的问题
即使我们制作的每一个Half-Adder和全加器都能正常工作,一旦所有计算器粘在一起工作就会有问题。玻璃球会下落的太快或者太慢、玻璃球还会反弹、其他各种各样的问题。这并不是说,它不能工作,计算器能工作,但你必须在计算器能达到你预期之前进行多次尝试。逻辑本身是完美的,只是纸板并不总是最实用的,并且需要大量的调整,问题是我们不能按时完成所有的调整。
完成了!
我们建立了两个以上全加器,其余的只是路径,这样玻璃球就能去正确的输入口和输出口了!