// This file is part of www.nand2tetris.org // and the book "The Elements of Computing Systems" // by Nisan and Schocken, MIT Press. // File name: projects/01/Mux.hdl /** * Multiplexor: * out = a if sel == 0 * b otherwise */ CHIP Mux { IN a, b, sel; OUT out; PARTS: //Invert Sel Not(in=sel, out=notsel); //Mux Logic And(a=a, b=notsel, out=and1); And(a=b, b=sel, out=and2); Or(a=and1, b=and2, out=out); }