電気で計算する方法

目次

前提知識

定義

直列スイッチ

並列スイッチ

3路スイッチ

回路の名前

複数桁への拡張

まとめ


まとめ

簡素な説明だけにとどめさせてもらうが、「それ以上」のことも書いておこう。


引き算は、足し算の符号を逆にすればいい。

2進数の符号の表現はいくつかあるけど、「2の補数」を使うと回路が簡単になる。


そして、2の補数とは、すべての桁を NOT したうえで、1を足した数のことだ。

NOT 回路は先に示したし、足し算回路も示した。だから、2の補数を求めるのは難しくない。


掛け算は、筆算の原理で行う

つまり、複数桁×複数桁の計算を、複数の複数桁×1桁の計算に分解し、結果を全部足し合わせるんだ。

ここで、掛け合わせる「1桁」は、2進数なので 0 か 1 しかない。 0 を掛ければ 0 だし、1 を掛ければ元の数だ。

つまり、掛け算の計算なのに、掛け算をする必要はない。足し算だけできればよい。

(冒頭で書いた、実は2進数の方が計算が簡単、というのはこういうことだ)


割り算は結構複雑になってしまうと思う。

というか、僕は回路設計の方は概要程度しかわからないので、こんな高度な回路は説明できない。


実際、昔の 8bit CPU などには、足し算・引き算しかついていないのが普通だった。

比較的最近の CPU でも、掛け算はついていても割り算はついていない、というものもある。




これで話は終わりだ。


コンピューターの基礎は、小3の理科の知識で、だいたい説明できる。

そして、それを組み合わせればすべての計算回路が出来上がってしまう。


もっとも、実際のコンピューターが、説明したような単純な回路で動いているわけではない。

ここで示したのは「原理」のみで、これを多数組み合わせてコンピューターを作ろうとすると、様々な問題に直面することになる。


でも、「どうやって電気で計算しているの?」という疑問に対する答えとしては、これで十分だろう。


基礎が理解できれば、次のステップに進むのも難しくない。

これ以上のことに興味がある人は、文中にちりばめた「用語」をヒントに検索してみるのも面白いかと思う。


修正履歴:
2019.4.2 2路スイッチ、と表記していたが、3路スイッチが一般的だったので修正。
(2路スイッチも間違いではない。日本語でも、英語でも two-way / three-way の両方の言い方がある。
 しかし、一般には3路ということが多いようだ)


前ページ 1 2 3 4

(ページ作成 2019-03-27)
(最終更新 2019-04-02)

戻る
トップページへ

-- share --

3000

-- follow --




- Reverse Link -