// 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/DMux8Way.hdl /** * 8-way demultiplexor: * {a, b, c, d, e, f, g, h} = {in, 0, 0, 0, 0, 0, 0, 0} if sel == 000 * {0, in, 0, 0, 0, 0, 0, 0} if sel == 001 * etc. * {0, 0, 0, 0, 0, 0, 0, in} if sel == 111 */ CHIP DMux8Way { IN in, sel[3]; OUT a, b, c, d, e, f, g, h; PARTS: DMux(in=in, sel=sel[2], a=ad, b=eh); DMux(in=ad, sel=sel[1], a=ab, b=cd); DMux(in=eh, sel=sel[1], a=ef, b=gh); DMux(in=ab, sel=sel[0], a=a, b=b); DMux(in=cd, sel=sel[0], a=c, b=d); DMux(in=ef, sel=sel[0], a=e, b=f); DMux(in=gh, sel=sel[0], a=g, b=h); }