
Die Aufgabe
"Ist es möglich, drei Signale zu invertieren, wenn Sie nur zwei Wechselrichter und eine unbegrenzte Anzahl von Elementen haben" UND "und" ODER "? Wir haben uns am Institut in einem Paar entschieden. Jetzt verwirrt ihre Entscheidung sogar fortgeschrittene Profis. Mal sehen, wie die Geektimes-Community damit umgeht, und gleichzeitig versuchen, die Geschichte ihres Auftretens wiederherzustellen ...
Ein Lehrer am Institut sagte, dass solche Aufgaben im Zeitalter der Röhrencomputer entstanden seien. Aber wir hatten nicht genug Verstand, um mittelmäßige Studenten um Details zu bitten, denn jetzt müssen wir die Geschichte gemäß der Beschreibung alter Autos wiederherstellen und ein wenig nachdenken.
Die ersten elektronischen Computer wurden auf Lampen gebaut. So enthielt der erste MESM-Computer in der UdSSR (1950) etwa 6000 Lampen, mit deren Hilfe die logischen Funktionen „UND“, „ODER“ und „NICHT“ der binären Logik implementiert wurden, die modernen Computern zugrunde liegen. Die Implementierung der klassischen Ventile an den Lampen ist im Bild zu sehen.

Die logische Funktion „UND“ wurde auf einer einzelnen Lampe aufgebaut, die Anzahl der Eingänge wurde durch die Anzahl der Gitter in der Lampe bestimmt. Für die Implementierung des Elements des klassischen 2IL-Ventils wurden zwei Lampen benötigt. Und obwohl später die sogenannten Compactrons auftauchten, ähnlich wie bei mehreren Lampen in einer Glühbirne, mussten die Ingenieure die logischen Ausdrücke noch optimieren, damit die Funktion „Und“ in ihnen überwiegt. Die Lampen waren teuer, nicht zuverlässig (MTBF 750 Stunden), erzeugten viel Wärme, aber vor allem waren sie riesig. 1952 schienen die ersten inländischen Halbleiterdioden Lampen mit geringer Leistung zu ersetzen. Ihr Erscheinungsbild kennzeichnete das Erscheinungsbild der Diodenlogik, wodurch die Größe der Logikgatter erheblich reduziert werden konnte. Die Implementierung der Funktionen „UND“ und „ODER“ in der Diodenlogik ist in der Abbildung dargestellt.

Für die Implementierung des Wechselrichters wurde jedoch noch eine Lampe benötigt. Für den Bau der BESM-2-Maschine wurden bereits Halbleiterdioden verwendet, die bereits 4000 Lampen und 5000 Halbleiterdioden enthielten. Die Verringerung der Größe und des Verbrauchs der "UND" - und "ODER" -Ventile war erheblich und machte es erforderlich, die Logikfunktionen zu optimieren, um die Anzahl der Wechselrichter in der Schaltung zu verringern. Wahrscheinlich mussten die Ingenieure gerade dieses Problem zum ersten Mal lösen.
Die Serienproduktion von Transistoren, die es ermöglichten, Lampen vollständig aufzugeben, begann 1955 in unserem Land. Und 1959 war die Setun-Maschine der erste
Transistor- Tubeless-Computer, obwohl er noch 20 Lampen hatte.
Und doch zurück zu unserer Aufgabe.
Wenn jemand eine Lösung kennt, lassen Sie uns den Spaß nicht für diejenigen verderben, die sie selbst lösen möchten. Antworten werden in den Kommentaren akzeptiert, bitte füllen Sie sie in Form von Einträgen in C oder Verilog aus.
Variante {nA, nB, nC} <=! {A, B, C}; nicht akzeptiert, das sind drei Wechselrichter.
UPD:
Lösung von @eatmoreD =! ((A & B) | (B & C) | (A & C))
E =! ((D & (A | B | C)) | (A & B & C))
nA = (D & E) | (D & (B | C)) | (E & B & C)
nB = (D & E) | (D & (A | C)) | (E & A & C)
nC = (D & E) | (D & (A | B)) | (E & A & B)
Lösungsvisualisierung von @AndreyDmitriev