📅  最后修改于: 2023-12-03 14:58:30.038000             🧑  作者: Mango
本文将介绍门电路和其应用。门电路是计算机中最基础的电路元件之一,由多个逻辑门组成。每个门电路根据其输入信号的不同,产生不同的输出信号。
常见的逻辑门包括 AND、OR、NOT、NAND、NOR、XOR、XNOR 等。其中,AND 门实现了“与”逻辑,OR 门实现了“或”逻辑,NOT 门实现了“非”逻辑,NAND 门实现了“与非”逻辑,NOR 门实现了“或非”逻辑,XOR 门实现了“异或”逻辑,XNOR 门实现了“同或”逻辑。
AND 门实现了“与”逻辑,只有当其两个输入都为 1 时,输出才为 1,否则输出为 0。AND 门电路的结构如下:
+-----+ +-----+
----| AND | | |
| +-----+ | |
| | |
| +-----+ | |
----| | | |
+-----+ +-----+
其中,AND 门的符号为 “∧”。
OR 门实现了“或”逻辑,只要其两个输入中有至少一个为 1 时,输出就为 1,否则输出为 0。OR 门电路的结构如下:
+-----+ +-----+
----| OR | | |
| +-----+ | |
| | |
| +-----+ | |
----| | | |
+-----+ +-----+
其中,OR 门的符号为 “∨”。
NOT 门实现了“非”逻辑,其输入为 0 时,输出为 1,其输入为 1 时,输出为 0。NOT 门电路的结构如下:
+-----+
----| NOT |
| +-----+
|
| +-----+
----| |
+-----+
或者:
+-----+
| NOT |
+-----+
|
|
|
+-----+
| |
+-----+
其中,NOT 门的符号为 “¬”。
NAND 门实现了“与非”逻辑,当其两个输入都为 1 时,输出为 0,否则输出为 1。NAND 门电路的结构如下:
+-----+ +-----+
----| NAND| | |
| +-----+ | |
| | |
| +-----+ | |
----| | | |
+-----+ +-----+
其中,NAND 门的符号可以表示为 “¬∧” 或者 “↑”。
NOR 门实现了“或非”逻辑,当其两个输入中有至少一个为 1 时,输出为 0,否则输出为 1。NOR 门电路的结构如下:
+-----+ +-----+
----| NOR | | |
| +-----+ | |
| | |
| +-----+ | |
----| | | |
+-----+ +-----+
其中,NOR 门的符号可以表示为 “¬∨” 或者 “↓”。
XOR 门实现了“异或”逻辑,当其两个输入不同的时候,输出为 1,否则输出为 0。XOR 门电路的结构如下:
+-----+ +-----+
----| XOR | | |
| +-----+ | |
| | |
| +-----+ | |
----| | | |
+-----+ +-----+
其中,XOR 门的符号可以表示为 “⊕” 或者 “⊻”。
XNOR 门实现了“同或”逻辑,当其两个输入相同的时候,输出为 1,否则输出为 0。XNOR 门电路的结构如下:
+-----+ +-----+
----| XNOR| | |
| +-----+ | |
| | |
| +-----+ | |
----| | | |
+-----+ +-----+
其中,XNOR 门的符号可以表示为 “⊙”。
不同的逻辑门可以组合成不同的电路,实现不同的功能。下面将以实例的形式介绍几种典型的门电路组合。
一个二进制加一器可以由多个全加器和一个 XOR 门组成。全加器电路如下:
+-----+ +-----+
--------| C |-----| |
| | +--| |----输出
>-------| A | | | |
| | | | |
| | | | |
>-------| B |--+ | |
+-----+ +-----+
其中,A、B 分别为输入信号,C 为前一位的进位信号,输出为本位的输出信号。
将多个全加器按照二进制加法的规则连接起来,可以得到增量计数器电路:
+-----+ +-----+
----| C |----------------| |
| | | +--| |------------------+
| | | | | | |
| | | | | | |
|---| |-------- |--| |-------- +-----+
| | | | | | | | | |
|---| |-------- | | |-------- | |
| | | | | | | |-----------输出
|---| |-------- | | |-------- | |
| | | | | | | | | |
|---| |-------- |--| |-------- +-----+
| | | | | | |
| | | | | | |
|---| |-------- |--| |-------- |
| | | | | | | | +-----+
|---| |-------- | | |-------- | |
| | | | | | | |
|---| |-------- | | |-------- | |
| | | | | | | |
| | | +--| |------------------+ |
+-----+ +-----+ |
|
|
|
+-----+
| |
+-----+
其中,每个全加器的输出信号是前一个全加器的 C 信号,最后一个全加器的 C 信号为进位信号。
串行加法器是一种可以在一条线上依次加法的电路。其电路原理基于半加器的组合,将多个半加器串联的电路即可作为串行加法器。半加器电路如下:
+-----+
-------| |---+
| | |
| | |
---->--| A | |
| |---|--->和
---->--| B | |
| | |
| | |
+-----+ |
+---进位信号
其中,A、B 分别为输入信号,和为输出信号,进位信号为 C。
多个半加器可以按照以下方法串联:
A1---->-+---+
B1---->-| |--+---->和1
| H | |
C1--(1)-| |--+
A2---->-| |--+---->和2
B2---->-| | |
| A |--+
C2--(2)-| |--+---->进位信号
A3---->-| |
B3---->-| |
+---+
其中,H 表示半加器,A 表示全加器,(1) 表示输入的进位信号。
串行寄存器是一种可以按照特定的时序存储和输出数据的电路。其电路原理基于 D 触发器的组合,将多个 D 触发器串联的电路即可作为串行寄存器。D 触发器电路如下:
D----+-------+---->Q
| |
| +--->Q'
| |
+--CLK--+
其中,D 为输入信号,CLK 为时钟信号,Q 为输出信号,Q' 为补码输出。
多个 D 触发器可以按照以下方法串联:
D1---->|D|---+ +-----+
| | | | |
+--|>|CLR| | |
| | | | | D2 |
| +-------+-->|>| |
| | | | |--->Dout
| | | | |
| +---|>| |
| | | |
| +-------+
| | | |
| |AW1 |
| | | |
| +-------+
| | | |
| | ...
| | | |
| +-------+
| | | |
| +--|AWn |
| | | | |
----|>CLK|------+ +-------+
|
+--------->>SIN
其中,D 触发器按照递推的方式存储数据,CLK 为控制时序的时钟信号,CLR 为清零信号,SIN 为串行输入信号,AW1~AWn 为并行输出信号,Dout 为串行输出信号。通过不同的时序控制,可以实现不同的寄存器、移位寄存器等功能。
本文介绍了常见的逻辑门电路及其组合方式。门电路作为计算机中最基础的电路元件之一,其应用范围非常广泛,包括数码电路、计算器、寄存器、移位寄存器等。在实际应用中,门电路的组合往往比单个门电路更为复杂,但是通过组合不同的门电路,可以实现非常复杂的功能。