2016-12-29 3 views
1

Ich habe ein Python-Modul So gemacht, die alle sieben logischen Gattern addiert (NOT, OR, AND, NAND, NOR, XOR, XNOR.)Komplexes Logikgatter?

Bitte beachten Sie, dass es nicht

a AND b 
wie

sieht

es sieht statt wie

And(a, b) 

In einem Programm, das ich machen würde versuchen, ich brauche ein Logik-Gatter mit drei Eingängen: A, B und C soll das Tor zurückkehren, was A ist wenn C falsch ist . Wenn C jedoch wahr ist, sollte es zurückgeben, was immer B ist. Es ist nicht egal ob A und B gleich sind. Ich möchte keine tatsächlichen IFs verwenden.

+1

Was Sie beschreiben, ist ein Ein-Bit-Multiplexer (MUX), wobei C die Auswahl (SEL) ist. Und es ist unklar, was genau Sie von uns verlangen. –

+1

Versuchen Sie, das Tor, das Sie wollen, aus den Toren zusammenzusetzen, die Sie haben? –

Antwort

0

Wenn Sie versuchen, ein Multiplexer Tor von den logischen Gattern erstellen Sie definiert haben, hier ist ein großer Artikel über das Thema: http://improve.dk/creating-multiplexers-using-logic-gates/.

Grundsätzlich Sie dies tun:

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

In Python-Notation, das ist wie (A & C) | (B & ~C) aussehen würde.

Wenn CTrue ist, ist das Ergebnis A. Wenn CFalse ist, ist das Ergebnis B.

+0

Oh mein Gott, ich kann dir nicht genug danken !! das wird mir TOTAL helfen! – Ian

+0

Freut mich zu hören –

0

Ist das wonach Sie suchen?

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

Haben Sie dies wünschen: here

Hier haben Sie Ihre C Augenblick der SEL. Der aus ist Ihre MEHRFACHKOPPLER Rückkehr

so in Python

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