進数 | ディジタルロジック01
今回のお話は真と偽について.
- True(真): 正しいこと. T.
- False(偽): 誤りのこと. F.
ブール型 ⇔ 2進数 ⇔ ディジタル回路 ⇔ コンピュータ ⇔ ブール型
さて,ブール型を利用すればディジタル回路の動作理論をすべて説明出来ると書いた. コンピュータは高度に設計されたディジタル回路であり,ブール型はコンピュータが扱う2進数として表現出来ることから,コンピュータとブール型は切っても切れない縁で結ばれていることは確かだ. ここではディジタル回路を構成する最も基本的な素子を紹介する. コンピュータはこれら素子を"意味ある形"で無数に繋ぎ合わせたディジタル論理回路なのである.AND (論理積)
Aが真 そして Bが真ならば 結果は真
入力のAとB,そして出力のXという3つの端子がついた素子. 図記号では信号は左から右へと流れる. AとBにブール値(2進数であり電気信号である)を入力すると,入力に応じて決まった出力が出力される. その様子を表にまとめたものを"真理値表(Truth Table)"と言う. 表の列が各状態を表す. 入力Aが0でBが1の時その出力Xは0になる,といった具合である. AとBが両方1である時にだけ1が出力される. これがAND素子. どちらも1でなくては結果が1とはならないことから,論理積と呼ばれる. これは,AとBの掛け算を考えたとき,どちらか一方が0だと積が0になるイメージに由来する.
OR (論理和)
Aが真 もしくは Bが真ならば 結果は真
論理積と同じく,入力のAとB,そして出力のXという3つの端子がついた素子. AかBの入力どちらか一方でも1ならば,その出力は1となる. 見方を変えると,AとB両方が0の時にだけ0を出力する素子がORである. この素子は入力のどちらか一方が真ならば,その出力が真となる素子なので,論理和と呼ばれる. これも論理積と同じく入力の足し算を考えたときのイメージに由来する.
XOR (排他的論理和)
Aだけが真 もしくはBだけが真ならば 結果は真
XORの出力は一風変わっていて面白い. "排他的"とは"互い違い"という言葉に解釈して構わない. AかBのどちらか一方が1のとき,その出力が1となるところは論理和と同じだが,AとBの両方が1の時,その出力は0となる. AとBの入力が互い違いで1の時に限り,出力が"真"になる. 簡単に言うと,入力されている1の数が奇数ならば"真",偶数ならば"偽"となる素子だ. その証拠に,偶奇判定素子として使われることもある. もし,入力端子が3つ(A,B,C)あれば,入力されている"真"の数が0か2つならば出力は"偽"となる. 1つか3つ全部ならば"真"が出力される.
NOT (論理否定)
Aの状態の逆が結果
NOTはアベコベ素子だ. 入力はAのひとつしかない. 入力が0ならば出力は1になり,入力が1ならば出力が0になる. 入力の反対(反転)を出力する. 図記号は三角形の出力側に丸がくっついた図. 三角形だけで丸が無い図記号(素子)も存在し,バッファと呼ばれているが,それについては後述する.
伝達と出力反転
上に紹介した4つの素子たちは互いに接続することができる. 例えばここにORの出力をNOTに入力する形で接続した図である. この出力はORの出力X'を反転した値Xになる. 素子ORの出力にNOTがくっついた素子はNOR(ノア)と呼ばれる. 同様に,ANDの出力にNOTがくっついた素子をNAND(ナンド),XORの出力にNOTが接続された回路をXNOR(エクスノア)と呼ぶ. 下図を見てほしい. NORの図記号は,ORの図記号出力側に丸がくっついたものになっている. つまり,この丸が"NOT"を示しているわけだ. NOTを入力側に接続した場合も同様に丸をくっつけた,いわゆる略記が可能であるが,その場合はNANDやNORとは呼ばない. 出力側にNOTがついている場合に限りNANDやXNORと呼ぶ.
上図右端にバッファを載せた. バッファは今までの知識で言うとNOTをNOTしたもの,つまり入力をそのまま出力する素子である. この素子に何の意味があるのか. ただの導線との違いはなにか. バッファ(Buffer)という素子は導線と同じく,入力と出力が全く同じ素子である. 1を入力すれば1が,何も入力しなければ(0ならば)0を出力する. しかしこのバッファ,導線とは違う点がある. それが信号の蓄積(遅延出力)である. 一定時間信号をためてから出力できるので,出力を遅らせることが出来るため遅延素子とも呼ばれることがある. 例えば,遅延(蓄積)時間が1秒のBufferがあるとする. 入力を0の状態から1へと切り替えたその1秒後に出力も0から1へと切り替わる. コンピュータのように非常に複雑なディジタル回路を組み上げる上で,この遅延素子は非常に重要な意味を持つ. 言い換えれば,NOTは遅延時間0秒のバッファを反転(NOT)したものと見ることもできる. ちなみに,AND,OR,XOR,NOTはすべて,NANDだけを用いて再現が可能である. 上で紹介した各素子の画像をクリックすると,NANDだけを用いて構成されたAND,OR,XOR,NOTを見ることができるので参考までにどうぞ.
2245988019002221173
https://www.storange.jp/2014/03/02.html
https://www.storange.jp/2014/03/02.html
素子 | ディジタルロジック02
2014-03-20T16:29:00+09:00
https://www.storange.jp/2014/03/02.html
Hideyuki Tabata
Hideyuki Tabata
200
200
72
72