nand2tetris/projects/01/DMux8Way.hdl
2021-12-05 09:07:22 +05:30

27 lines
851 B
Plaintext

// 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:
// Put your code here:
DMux(in=in, sel=sel[2], a=i, b=j);
DMux(in=i, sel=sel[1], a=w, b=x);
DMux(in=j, sel=sel[1], a=y, b=z);
DMux(in=w, sel=sel[0], a=a, b=b);
DMux(in=x, sel=sel[0], a=c, b=d);
DMux(in=y, sel=sel[0], a=e, b=f);
DMux(in=z, sel=sel[0], a=g, b=h);
}