開発環境
- OS X El Capitan - Apple (OS)
- Emacs(Text Editor)
コンピュータシステムの理論と実装 (Noam Nisan (著)、Shimon Schocken (著)、斎藤 康毅(翻訳)、オライリージャパン)の1章(ブール論理)、1.5(プロジェクト(1.2.2(基本論理ゲート、Nand、Not、And、Or、マルチプレクサ、デマルチプレクサ))を取り組んでみる。
1.5(プロジェクト)
コード(Emacs)
Not.hdl
CHIP Not {
IN in;
OUT out;
PARTS:
Nand(a=in, b=in, out=out);
}
And.hdl
CHIP And {
IN a, b;
OUT out;
PARTS:
Nand(a=a, b=b, out=nandab);
Nand(a=nandab, b=nandab, out=out);
}
Or.hdl
CHIP Or {
IN a, b;
OUT out;
PARTS:
Not(in=a, out=nota);
Not(in=b, out=notb);
And(a=nota, b=notb, out=w);
Not(in=w, out=out);
}
Mux.hdl
CHIP Mux {
IN a, b, sel;
OUT out;
PARTS:
Not(in=sel, out=notsel);
And(a=notsel, b=a, out=w1);
And(a=sel, b=b, out=w2);
Or(a=w1, b=w2, out=out);
}
DMux.hdl
CHIP DMux {
IN in, sel;
OUT a, b;
PARTS:
Not(in=sel, out=notsel);
And(a=in, b=notsel, out=a);
And(a=in, b=sel, out=b);
}
0 コメント:
コメントを投稿