图灵完备之路(数电学习三分钟)----数据选择器与总线
1.数据选择器
之前我们学习了逻辑与算数的计算,得知两个数字之间的加减和与或的结果是不同的,而一个通用的数字电路不可能只有一个功能,所以我们将在本节引入电路选择器这一“器件”,来实现对两个输入的运算方式的选择,甚至是学习手机电脑中不同APP的切换的思想。
首先,我们假设数据已经经过了所有的运算,根据运算方式的不同得到了一堆不同的结果,那么我们的任务便是从不同的结果中选出自己想要的,比如此时有两个结果,一个加,一个减,输入为16与9,结果便有25与7,假设用1代表加,0代表减,那么设计电路如下:
当1时,选择16输出;当0时,选择9输出,一方输出,另一方就关闭,所以需要两个逻辑相反的开关,同时需要让开关同时受一个输入的控制,那么电路设计如下:
2.总线
既然我们将不同的结果发送到了同一个输出端,那么接下来就自然而然的要将多个结果发送到多个输出,实现从线到面的转变,这便是总线。
以两个输入(AB)对两个输出(12)为例,可能出现的情况有1A,2A,1B,2B,既然所有输入都能接到所有输出,那么他们必然是相连的情况:
由于输入不能接到输入(会短路),所以需要开关将输入分开,开关选几个呢?假设选1个,那么会出现A输出时,B不受控制的情况,所以至少得2个:
2个自然可以达成上述目的,但开关还应该控制当A输出到1时,不输出到2的情况,所以还需要2个控制输出:
四个开关需要几个信号控制呢?4个当然可以,当实际输入无非AB,输出无非12,所以2个就可以完成数据的输入输出选择,布线可以按照上一节的来:
这便是2对2的总线,而计算机中的通信总线,无非就是对上述情况的堆量而已。