加算器 【adder】 アダー / 加算回路
基本となる回路は「半加算器」(half adder:ハーフアダー)で、2進数の値の同じ桁(ビット)同士を加算して、結果を出力する。出力はその桁の値と、上位桁への繰り上がりを表す「キャリー」(carry out)の2つとなる。
2つのビットが両方「0」なら和は「0」、片方が「1」なら「1」を出力するが、両方「1」ならば結果は「10」と2桁の値になるため、その桁の値として「0」を、キャリーとして「1」を出力する。キャリーは隣の桁の値に反映させる。
下の桁からの繰り上がりを考慮した回路は「全加算器」(full adder:フルアダー)という。二数の同じ桁のビットと、下の桁の加算器から出力されたキャリーの3つを入力とし、加算後のその桁の値とキャリーを出力する。キャリーはさらに上位桁の全加算器の入力となる。
全加算器は3つの入力を加算して、「00」から「11」までの8種類の結果を得る。下位ビットの値がその桁の出力となり、上位ビットの値がキャリー出力となる。全加算器は半加算器2つとOR回路1つで構成することができる。
複数桁の2進数の加算器は、最下位桁に半加算器を置き、上位側に桁の数だけ全加算器を並べ、各加算機のキャリー出力を上位桁の全加算器の入力に接続すればよい。例えば、半加算器1つと全加算器7つを並べれば8ビットの加算器となる。
(2023.8.22更新)