问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

逻辑门:OR、AND、XOR、NOR、NAND、XNOR 和 NOT

创作时间:
作者:
@小白创作中心

逻辑门:OR、AND、XOR、NOR、NAND、XNOR 和 NOT

引用
CSDN
1.
https://m.blog.csdn.net/qq_43797817/article/details/138711762

逻辑门是数字电路中的基本构建块,用于执行基本的逻辑运算。从简单的与门(AND)到复杂的异或非门(XNOR),这些逻辑门构成了计算机硬件和软件的基础。本文将通过Python代码示例和详细的解释,帮助读者理解这些基本逻辑门的工作原理。

基本逻辑门的Python实现

AND 门

如果两个输入均为 1,则 AND 门给出输出 1,否则给出 0。

def AND(a, b):
    if a == 1 and b == 1:
        return True
    else:
        return False

NAND 门

如果两个输入均为 1,则 NAND gate (negated AND)给出 0 的输出,否则给出 1。

def NAND(a, b):
    if a == 1 and b == 1:
        return False
    else:
        return True

OR 门

如果两个输入中的任何一个为 1,则 OR 门给出 1 的输出,否则给出 0。

def OR(a, b):
    if a == 1 or b == 1:
        return True
    else:
        return False

XOR 门

如果任一输入不同,则 XOR 门给出 1 的输出,如果它们相同,则给出 0。

def XOR(a, b):
    if a != b:
        return 1
    else:
        return 0

NOT 门

它充当逆变器。它只需要一个输入。如果输入为 1,则会将结果反转为 0,反之亦然。

def NOT(a):
    return not a

NOR 门

如果两个输入均为 0,则 NOR gate (negated OR)给出 1 的输出,否则给出 0。

def NOR(a, b):
    if(a == 0) and (b == 0):
        return 1
    elif(a == 0) and (b == 1):
        return 0
    elif(a == 1) and (b == 0):
        return 0
    elif(a == 1) and (b == 1):
        return 0

XNOR 门

XNOR gate (negated XOR) 两个输入相同的输出为1,如果两个输入不同,则为0。

def XNOR(a, b):
    if(a == b):
        return 1
    else:
        return 0

逻辑门的详细解释

NOT 门

NOT门是一种基本的逻辑门,只有一个输入和一个输出。当 NOT 门的输入为逻辑 1 时,其输出为逻辑 0,当其输入为逻辑 0 时,输出为逻辑 1。因此,NOT门用于在数字电路中执行反相操作。它补充输入并产生相应的输出。

NOT门的符号及真值表:

NAND 门实现 NOT 门:
Y = (AA)‘=A’

NOR 门实现 NOT 门:

使用晶体管(双极结型晶体管)实现 NOT 门:

NOR 门

NOR门是一种数字逻辑门,在两个或多个二进制输入和输出二进制信号之间执行NOR操作。如果所有输入均为 0,则返回 1;如果任何输入为 1,或所有输入均为 1 ,则返回 0。

NOR门的符号及真值表:

NOR门的类型:

  • 2 – input NOR gate
    输入数 n = 2,因此真值表将有 2^n= 2^2= 4 个组合,即上图形式。
  • 3 – input NOR gate
    需要三个输入,因此 n = 3。真值表将有 2^3= 8 种可能结果的组合。

使用晶体管实现 NOR 门:

XNOR 门

XNOR门是一种专门设计的逻辑门,只有两个输入和一个输出。当两个输入均为逻辑 1 或逻辑 0 时,XNOR 门的输出为逻辑 1。换言之,当两个输入相同时,XNOR 门的输出为逻辑 1。对于不同的输入,XNOR 门的输出为逻辑 0。也就是说,XNOR门只不过是一个XOR门,后面跟着一个NOT门。

XNOR门的符号及真值表:
Y=A⊙B

使用NAND门实现XNOR门:

使用NOR门实现XNOR门:

使用晶体管实现XNOR门:

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号