显示的集成与最终的加法器

到目前为止, 无论是运算的模块, 还是显示译码的模块, 都已经完成了, 甚至有的模块还给出了多种实现. 将这些综合起来, 就得到了最开始处给出的那个电路效果:

简易的加法器

现在, 你应该对此电路的所有细节都一清二楚了, 如果你还有不明白的, 可以再找到相关章节细读.

应该说, 目前处理的问题还是比较简单的, 但哪怕就是这么简单的几条加法规则, 整个实现差不多也占满了一个屏幕.

自然, 这里面很多是关于显示层面上的东西, 核心的半加器还是比较简单. 但显示同样是系统中的一环, 而且我们注意到, 两个输入方面的显示其实还是用了比较简陋的方式.

如果输入也像输出那样, 整个电路势必更加庞杂.

当然, 在前面也介绍了一种 自定义逻辑 的组件, 如果能利用它取代一堆复杂的电路元件及连线, 事情还是可以简单不少的:

自定义逻辑译码器

毕竟我们已经知道了怎么去实现, 还总是把所有的最底层细节都展示出来就不是那么必要的. 因此, 利用自定义逻辑去做一个封装和抽象也是可取的.

尤其是这些显示层面的东西, 往往很庞杂, 把它们的内部逻辑塞到一个模块里隐藏情况还是不错的, 也不至于那么辣眼睛, 算是密集恐惧症患者的福音了.

除了现在的这个自定义逻辑功能, 后面还将介绍另一种功能强大的抽象与封装的方式, 也即是 创建分支(子)电路 的方式, 将在后续再去介绍.

这些功能之所以重要, 是因为我们看到, 哪怕是最简单的一位数加法, 它的整个实现已经呈现出一定的 复杂性(complexity) 来了.

如果没有一种有效的应付复杂性的手段, 想想后面, 还要实现多位数的加法, 还要实现减法, 要对更多位的输出进行译码; 后续还可能有乘法, 除法, 还要存储数据, 还要实现定时器, 计数器, 比较器, 寄存器, 指令译码器等等, 那整个东西就要复杂得没边了.

哪怕所有东西我们都捡最简单的版本去实现, 它依然是非常庞杂的.

没有应付复杂性的手段, 这一切将难以把握, 甚至直接走向失控.

为此, 还是需要稍稍暂停下来, 总结思考一番, 并引入一种新的抽象手段, 也即是下一章要介绍的主题 -- 门电路(Gate).

目前, 还仅仅是个开始, 我们都没进入门电路的世界, 可以说我们都还没有"入门".

入门 在这里算是个双关语了.

另外, 一个很重要的事情是 实践. 在这里我强烈建议你去线上的模拟器上实际操弄一番, 一条线一条线的连一下, 一个继电器一个继电器的摆一下, 还要考虑怎么紧凑, 整齐, 走线合理.

而且最好是依靠自己的理解与回忆去实现, 而不是直接"抄书", 这样才能更好验证你是否真的掌握了.

实践同时也是一个加深自己理解与记忆的最好方式, 能让我们牢牢掌握所学的知识.

也只有通过实践, 到时你才能更容易体会到 门电路 带来的好.

results matching ""

    No results matching ""