**
* 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/03/a/Bit.hdl
*/
/**
* 1-bit register:
* If load[t] == 1 then out[t+1] = in[t]
* else out does not change (out[t+1] = out[t])
*/
CHIP Bit {
IN in, load;
OUT out;
PARTS:
And(a=in, b=load, out=s);
Not(in=load, out=t);
And(a=t, b=w, out=u);
Or(a=s, b=u, out=v);
DFF(in=v, out=w);
Or(a=w, b=false, out=out);
}