📜  门| GATE-CS-2003 |第90章(1)

📅  最后修改于: 2023-12-03 15:12:40.414000             🧑  作者: Mango

门 | GATE-CS-2003 |第90章

本文将介绍门电路及其在计算机科学中的应用。门电路是数字电路的基本构件,用于执行布尔逻辑运算。门电路可以通过组合在一起实现各种逻辑功能,如加法器和多路选择器等。

基本门电路

常用的基本门电路包括与门、或门和非门。它们分别实现逻辑运算中的“与”、“或”和“非”操作。其相应的真值表如下:

|A|B|A AND B|A OR B|NOT A| |-|-|------|------|-----| |0|0| 0 | 0 | 1 | |0|1| 0 | 1 | 1 | |1|0| 0 | 1 | 0 | |1|1| 1 | 1 | 0 |

与门

与门的逻辑符号为“&”,其真值表可以表示为:

|A|B|A AND B| |-|-|------| |0|0| 0 | |0|1| 0 | |1|0| 0 | |1|1| 1 |

在门电路中,与门由两个输入和一个输出组成。当两个输入都为1时,输出为1;否则输出为0。与门可以用逻辑电路图表示为:

  +---+
A o---|&  |
    |   |
B o---o   |
    +---+
    |   |
X o-----o
或门

或门的逻辑符号为“|”,其真值表可以表示为:

|A|B|A OR B| |-|-|------| |0|0| 0 | |0|1| 1 | |1|0| 1 | |1|1| 1 |

在门电路中,或门也由两个输入和一个输出组成。当两个输入中至少一个为1时,输出为1;否则输出为0。或门可以用逻辑电路图表示为:

  +---+
A o---|OR |
    |   |
B o---o   |
    +---+
    |   |
X o-----o
非门

非门的逻辑符号为“~”,其真值表可以表示为:

|A|NOT A| |-|-----| |0| 1 | |1| 0 |

在门电路中,非门只有一个输入和一个输出。其逻辑功能是将输入取反,即1为0,0为1。非门可以用逻辑电路图表示为:

  +---+
A o---|~  |
    |   |
X o---o
组合逻辑电路

除了基本门电路之外,组合逻辑电路还包括多路选择器、加法器和 Flip-Flop 等,这些电路可以实现更加复杂的布尔逻辑运算。其中,多路选择器和加法器是最基本的电路组件。

多路选择器

多路选择器(Multiplexer)是一种带有多个输入和一个输出的电路。其输出为某个输入的副本,该输入由控制输入的值来选定。多路选择器的逻辑电路图如下所示:

            +---+ 
       Sel0 |   |
           o---+ 
            |   |
       Sel1 |   |
           o---+ 
            |   |
       Sel2 |   |
           o---+ 
            |   |
       Sel3 |   |
           o---o
            |   |
input0 o---->  |
            |   |
input1 o---->  |
            |   |
input2 o---->  |
            |   |
input3 o---->  |
            +---+
               |
            output

在上图中,选择器有4个输入和一个输出。控制输入用于选择一个输入,当控制输入的二进制表示为 $i$ 时,输出为第 $i$ 个输入的内容。

加法器

加法器是一种电路,用于在两个二进制数字之间执行加法。它可用于执行算术和逻辑运算,如加法和布尔逻辑和。全加器(Full Adder)是最基本的加法器电路。多级全加器可以通过级联几个全加器来实现对较长的二进制数字的加法。以下是2位全加器的逻辑电路图:

     +---+                 +---+
A o--|   |              C0 |   |
   o--|   |              o--|   |
B o--| + |--C1---SUM---o--| + |--C2 
   | | |             | | | |
   o-|-|----Cin------o-|-|-|
     +-|--------------|-+ |
       |                | |
     C0+-----Cout-------|-+
                         |
                       SUM

其中,SUM 输出表示两个输入的和,Cout 输出表示相加是否产生了进位。Cin 输入表示后续的进位。多级全加器可以通过将 C0、SUM 和 Cout 作为上一级全加器和下一级全加器之间的连接来级联。

结论

门电路是数字电路的基本构件,用于执行布尔逻辑运算。基本门电路包括与门、或门和非门,多级门电路可组合实现更复杂的逻辑运算。多路选择器和加法器是最基本的门电路组件,多级选择器和多级加法器的级联可用于执行更复杂的操作。对门电路的深入了解可帮助程序员实现更高效、更可靠的数字电路设计。