Files
Hack-Machine/Project 1/Mux8Way16.hdl
T

28 lines
742 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/Mux8Way16.hdl
/**
* 8-way 16-bit multiplexor:
* out = a if sel == 000
* b if sel == 001
* etc.
* h if sel == 111
*/
CHIP Mux8Way16 {
IN a[16], b[16], c[16], d[16],
e[16], f[16], g[16], h[16],
sel[3];
OUT out[16];
PARTS:
Mux16(a=a,b=b,sel=sel[0],out=out11);
Mux16(a=c,b=d,sel=sel[0],out=out12);
Mux16(a=e,b=f,sel=sel[0],out=out13);
Mux16(a=g,b=h,sel=sel[0],out=out14);
Mux16(a=out11,b=out12,sel=sel[1],out=out21);
Mux16(a=out13,b=out14,sel=sel[1],out=out22);
Mux16(a=out21,b=out22,sel=sel[2],out=out);
}