×
コンピュータ構成要素

しかし、リップルキャリーアダーには弱点があります。それは、下の桁の計算が終わって繰り上がり信号が出力されないと、上の桁の計算が完了しないという点です。桁数が増えるほど信号の伝達に時間がかかり、計算全体が遅くなってしまいます。この問題を解決するために、現代の高速なCPUでは「桁上げ先見加算器(キャリールックアヘッドアダー)」という高度な仕組みが採用されています。これは、下の桁の計算結果を待つことなく、あらかじめすべての桁の繰り上がりを並列に予測して計算する回路であり、計算速度を飛躍的に向上させています。

試験でのポイント

情報処理試験において加算器は、論理回路の応用例として非常によく出題されます。「半加算器」と「全加算器」の機能の違いや、内部を構成する基本論理回路の組み合わせが問われます。

特に重要なポイントは以下の通りです。

  • 半加算器の役割:2つの1ビットの入力(AとB)を足し合わせて、その桁の「和(S:Sum)」と、上の桁への「桁上がり(C:Carry)」を出力します。下の桁からの繰り上がりは考慮できません。
  • 半加算器の回路構成:「和(S)」の出力にはXOR回路(排他的論理和)が使われ、「桁上がり(C)」の出力にはAND回路(論理積)が使われます。この対応関係は頻出です。
  • 全加算器の役割:2つの1ビットの入力(AとB)に加えて、下の桁からの「桁上がり入力(Cin)」を含めた3つのビットを同時に足し合わせます。
  • 全加算器の構成:全加算器は、2つの「半加算器」と1つの「OR回路」を組み合わせて作ることができます。

試験問題では、半加算器の図が示され、「Xにあてはまる回路はどれか(答え:XOR回路)」を答えさせるような形式が定番です。真理値表を自分で書いて「1+1=10」になる動きを確かめると理解が深まります。

関連する用語

関連する用語として、加算器を構成する基本となる論理回路、計算に用いられるデータの表現方法である2進数や補数、演算結果を一時的に保存しておくフリップフロップやレジスタなどが挙げられます。