复杂的逻辑门?

时间:2016-12-29 15:34:18

标签: python boolean logic boolean-logic

所以我制作了一个Python模块,它添加了所有七个逻辑门(NOT,OR,AND,NAND,NOR,XOR,XNOR。)

请注意,它看起来不像

a AND b

它看起来像

And(a, b)

在我尝试制作的程序中,我需要一个带有三个输入的逻辑门:A,B和C.如果> C为假,则门应返回A 。但是,如果C为真,它应该返回B是什么。如果A和B相同,它确实重要。我不想使用实际的if。

3 个答案:

答案 0 :(得分:0)

这是你要找的吗?

def MUX(A, B, C):
    return B if C else A

答案 1 :(得分:0)

你想要这个: here

这里有你的SC瞬间SEL。 out是您的MULTIPLEXER返回

所以在python中

def MULTIPLEXER(A,B,C):
   if(C):
      return B
   else:
      return A

答案 2 :(得分:0)

如果您尝试从已定义的逻辑门创建多路复用器门,请参阅以下文章:http://improve.dk/creating-multiplexers-using-logic-gates/

基本上,你这样做:

def MUX(A, B, C):
    return OR(AND(A, C), AND(B, NOT(C)))

在Python表示法中,这看起来像(A & C) | (B & ~C)

如果CTrue,则结果为A。如果CFalse,则结果为B