aboutsummaryrefslogtreecommitdiff
path: root/projects/01/Mux.hdl
diff options
context:
space:
mode:
authorYuchen Pei <me@ypei.me>2017-11-29 12:30:41 +0100
committerYuchen Pei <me@ypei.me>2017-11-29 12:30:41 +0100
commita000308104aab27c2dde9a306f1bc654b2db4806 (patch)
treeaecc628e14c1628b5714281437aba18680cdc27b /projects/01/Mux.hdl
first commit
Diffstat (limited to 'projects/01/Mux.hdl')
-rw-r--r--projects/01/Mux.hdl22
1 files changed, 22 insertions, 0 deletions
diff --git a/projects/01/Mux.hdl b/projects/01/Mux.hdl
new file mode 100644
index 0000000..aac2e36
--- /dev/null
+++ b/projects/01/Mux.hdl
@@ -0,0 +1,22 @@
+// 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:
+ // Put your code here:
+ Not (in=sel, out=notsel);
+ And (a=a, b=notsel, out=aandnotsel);
+ And (a=sel, b=b, out=selandb);
+ Or (a=aandnotsel, b=selandb, out=out);
+}