エピ3 論理回路という考え方が登場します。
***
論理回路という考え方が1937年に登場します。
なお、これが論理回路と呼ばれるようになったのは幾らか後になってからの様ですし、これ以前にも類似の考え方はあったのですけど。エポック的な感じで。よろしくお願いします。
***
論理回路とは、AND・OR・NOTを基本ゲートとして、この組合せで様々な回路を構成したものです。
様々な回路とは、加算器や乗算器、フリップフロップが良くある例です。そして、シフトレジスタ、カウンタ、エンコーダ、デコーダ、セレクタ、マルチプレクサ、...CPUができる云々と続きます。
*
例えば、A=P and Q、B=P or Q として、排他的論理和(ExOR)は、(not A)and B です。
P ┃ Q ┃ A ┃ B ┃not A┃ ExOR = (not A) and B
━━━╋━━━╋━━━╋━━━╋━━━╋━━━
0 ┃ 0 ┃ 0 ┃ 0 ┃ 1 ┃ 0
0 ┃ 1 ┃ 0 ┃ 1 ┃ 1 ┃ 1
1 ┃ 0 ┃ 0 ┃ 1 ┃ 1 ┃ 1
1 ┃ 1 ┃ 1 ┃ 1 ┃ 0 ┃ 0
排他的論理和に桁上り(キャリー)を付けると、1ビットの加算器になりますね。ハーフアダーと言います。
*
基本ゲートの実装には、現在ならトランジスタ(TTL)やMOS-FET(CMOS)が使われます。でもCMOSが大半かな。今のCMOSはタフな感じ。省電力で好きです。トランジスタができる前は電磁リレーや真空管が使われていました。
基本ゲートをトランジスタなどで実装して集積回路(IC)としたパッケージは「汎用ロジックIC」と言います。基本ゲートだけではなくてNANDやNOR、ExOR、フリップフロップ、シフトレジスタ、加算器、乗算器、...なども用意されてます。
汎用ロジックICは「標準ロジックIC」とも言うみたいです。ゲジゲジとも言うね。TTLが床に転がっていて、素足で踏んで痛い思いをした人います?
*
で、1937年のことです。
クロード・シャノンという、今では悪魔のような知性を盛った奴とも言うべき人(個人の印象です)が、マサチューセッツ工科大学の修士論文で ”A Symbolic Analysis of Relay and Switching Circuits”(リレーとスイッチ回路の記号論的解析)を発表したのです。
修士論文を書いたことのある方、思い出して下さいな。誰かにリファーされたことあります?
シャノンの発表によりブール代数が注目を集めました。
*
シャノンの修士論文より前に日本電気社にいた中嶋章という方が1935年頃に同様な研究発表をしていたんですって。当時の中嶋章は27才。天才だな。シャノンは1937年には21才。悪魔だ。
*
ジョージ・ブールというイギリスの数学者が1854年に "An investigation of the laws of thought" を発表しました。
この論文によって、記号論理あるいは論理代数と呼ばれる数学の分野が始まりました。ブールが始めたのでブール代数(ブール論理)とも言います。
ブール代数とは、砕けて言うと、X, Y, Z などの真偽の2値をとる変数と、∧(and), ∨(or), ┓(not)の演算子により、何かを表現する式を立てて計算とか証明とかをするのです。...、多分。難しいことはググって下さい。
結合法則や交換法則、分配法則とか。ベン図やカルノー図。それからド・モルガンが出てきます。名前は覚えてますね。
┓(X ∨ Y) = (┓X) ∧ (┓Y)
*
なお、1879年にフレーゲが述語論理を始めるも、1901年にラッセルが自己言及のパラドックを指摘して、1930年にはゲーデルの不完全性定理が出て。数学史って面白いです。
*
1937年のシャノンの発表で注目すべき点は、電磁リレーなり真空管を直列や並列につなげることで、...つまり電気回路(電子回路)によって...、ANDゲートやORゲートが実現できて、これがブール代数と同等になることを示したこと、だと思います。
参考までに電磁リレーを用いた基本ゲートの図を作ってみました。概念的にはこれでANDゲート等になるのです。
図中、VCCは +5V で、GNDは 0V としましょう。
ANDなら、XとYの両方に +5V の電圧が入力されると2つの電磁リレーがオンになって、Zに +5V が出力されます。
ORなら、XとYのどちらかに +5V の電圧が入力されれば 、Zに +5V が出力されます。
NOTは、入力が 0V なら出力は +5V で、入力が +5V だとリレーがオフになって出力は 0V になります(プルダウン抵抗が無いので正確にはフロート状態)。
直列ならANDで、並列ならOR。...、それはそうだよね。今なら当たり前に中学くらいでスイッチと豆電球とかを使って勉強しますけど。
AND・OR・NOTを並べると「ハーフアダー」が出来て、桁上りの処理も行なうと「フルアダー」になって加算器ができる。現在ならデジタル回路の基本事項です。
それがですね。シャノンの修士論文には色々な論理回路の例があるのですが、その最後の例で基本ゲートを組み合せると加算器ができることを記しているのです。
加算器は計算機の最も基本的な演算器で、その構成法をシャノン(21才)が示したのです。
要するに、加算器は論理回路で構成できて、論理回路は電子回路で実装できる!
これによって電子回路の応用が広がり、そうして生まれたのが計算機だ、とも言えるのでは。
***
**
*
1937年は計算機科学にとって基礎的な概念となる「計算可能性」が整理された頃でした。
チャーチ、チューリング、ゲーデル、クリーニといった人たちによってラムダ計算やチューリングマシンなどの概念が発表されて、これらにより「計算可能」とは何を意味するのか定義されたのです(...、でも原始再帰関数って怪しくない?と思った)。
プログラム可能な計算機が開発される前に、理想的な計算機のモデルによって計算可能性を定義するって、どういう事ですか? 順番が逆なんでは?
***
ブール代数や論理回路では真と偽という2値を扱いますけど、デジタルという言葉は使ってないですね。バイナリとデジタルは観点が違うのだな。
ではデジタルはどこから出てきたのか?
***
間違いの指摘とか疑問とか、ご意見・ご感想とかありましたら、どうぞ感想欄に!
***
2025.9.8 推敲。