僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
てけとーにキーボード弾いてたら論理和になった。
そのためか、なんか自力で達成したように思えなかったり。
def nand_gate(a, b): if a == b == 1: return 0 else: return 1 def not_gate(a): return nand_gate(a, a) def and_gate(a, b): return not_gate(nand_gate(a, b)) >>> nand_gate(not_gate(1), not_gate(1)) 1 >>> nand_gate(not_gate(1), not_gate(0)) 1 >>> nand_gate(not_gate(0), not_gate(1)) 1 >>> nand_gate(not_gate(0), not_gate(0)) 0
def nor_gate(a, b): return not_gate(or_gate(a, b)) def xor_gate(a, b): return and_gate(nand_gate(a, b), or_gate(a, b))
やはりソフト(と強力な計算機)でこんなのやると、
ロジックが無意味に複雑になってる、はず(なことが、見えない)。
このXORをNANDに展開しようとしたが、バスを降りる前に
完全にそれを達成するのは、ちと無理だった。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。