在锁存器中保存多位值通常是很有用的。假如你想用第12章的加法器把3个8位数相加,可以在开关的第1行中存入第1个加数,以同样的方式把第2个加数存入第2行,但是必须记下第一次相加的结果。然后你需要把这个结果输入到开关的一行中,再把第3个加数输入到开关的另一行中。而你实际上不必输入中间结果,你应该能够在第一次计算之后直接使用它。
可以使用锁存器来解决这个问题。我们在一个小盒子里布置8个锁存器,如前所述,每个锁存器包括两个或非门、两个与门以及一个反相器。所有的时钟输入端都互相连在一起。结果如下图所示。
这个锁存器可以一次保存8位数。上面的8个输入端依次标记为 ${ \bf D } _ { 0 } \sim { \bf D } _ { 7 }$ ,下面的8个输出端被标记为 $\mathrm { Q } _ { 0 } \sim \mathrm { Q } _ { 7 }$ 。左边的输入是时钟(Clk),时钟信号通常为 $\mathbf { 0 } _ { \circ }$ 当时钟信号为1时,D端输入的8位值被送到Q端输出。当时钟信号为0时,这8位值将保持不变,直到时钟信号再次被置1。
也可以将8位锁存器的8个数据输入端和8个Q输出端画为两组线,如下图所示。
下面是8位加法器的图示。
14 反馈与触发器
173