2024年5月13日月曜日

加算器の作り方

コンピュータは、基本的に計算機です。足し算を駆使して計算しています。

論理回路を使って、四則演算ができるようになれば、コンピュータの完成です。

それは、言い過ぎか…。

足し算を実現させる演算装置を加算器と言います。

それでは加算器を2つ紹介します。

半加算器・全加算器

それぞれの特徴をまとめました。ざっくりいうとこんな感じです。

  • 半加算器:一桁同士の足し算
  • 全加算器:二桁以上の足し算


半加算器の場合

1 + 1 = 10

のような計算を行います。
答えは2桁になっても構いません
しかし、足し算する数字は1桁になっています。

全加算器の場合

10 + 01 = 11

のような計算を行います。
こちらは2桁の数字があるので、全加算器を使って計算する必要があります。

実際のコンピュータ

010101011

010101011

のような数字同士を足し算しています。
1桁同士の足し算をする場面はほとんどないため、使われる加算器は、ほとんど全加算器となっています。

半加算器の計算方法

半加算器の計算は、次の4つのみです。

  • 0 + 0 = 0
  • 0 + 1 = 1
  • 1 + 0 = 1
  • 1 + 1 = 10
1桁同士の足し算しかできないので、計算できる種類はこれら4つだけです。
半加算器の回路はこれです。



AND回路とXOR回路を使って、配線を少し工夫する必要がある。
左側のXとYが入力になっており、こちらから電気を流します。

計算の役割で言うと、

  • 左側のXとY:足し算をする数値
  • 右側のAとB:答え

となっています。
答えの中でも、Aが10の位・Bが1の位を表しています。

全加算器による足し算

ここまでは半加算器を使って1桁の足し算を見てきました。ここからは2桁以上の足し算に用いる全加算器についてみていきます。全加算器はこちらの図のようになります。先ほど作った半加算器を2つと、OR回路を組み合わせる必要があります。



入力はX、Y、Cの3つです。Cは「桁上がり」を意味する英語CARRYの頭文字です。
XとYの足し算を行って、桁上がりをした際にCに値が回るようになっています。
全加算器の場合は計算する数が増えれば増えるほど電気回路が増えていきます。
これによって計算ができるようになるのです。