toyintelligence’s diary

コンピュータの基礎を遊んで学ぶ趣味ブログ

全加算器自作

前回作った半加算器を二個組み合わせて全加算器を作る。全加算器はA、B、Cinの計3つの1bit入力を足し合わせて2bitの値を得て、C、Sの計2つの1bitとして出力する機械。2つの数を足し算するときに、その2進数版のある桁に着目し、その桁の数字A、Bを下の桁からの繰り上がりCin、上の桁への繰り上がりCを勘定に入れて計算するのに使える。文章だとわかりにくいが、筆算のイメージを使うと

f:id:toyintelligence:20200413233749p:plain
足し算における全加算器の役割

な感じ。なので、全加算器を大量に用意してCとCinを繋げば任意の大きさの数の足し算ができるようになる。

作った回路はこんな感じ。緑LEDがS、赤LEDがC。青ケーブルがA、B、黄色ケーブルがCin。ケーブルを最奥につなぐと1、奥のブレッドボードの手前につなぐと0。

f:id:toyintelligence:20200413231749p:plain
0+0+0=00

f:id:toyintelligence:20200413233326p:plain
1+0+0=01

f:id:toyintelligence:20200413233348p:plain
1+0+1=10

f:id:toyintelligence:20200413233410p:plain
1+1+1=11

OK!

ダイオードの極性を間違えてだいぶ詰まってしまった。まだまだ修行が足りない。とにかく、これで足し算が計算できるようになった。