論理演算
今回のテーマはコンピュータの演算においてひっじょうに大事な内容なので覚えておいていほしいですね。
発達の経緯なんかはwikipediaでも見てもらうとして、内容のほうに入りましょう。
https://ja.wikipedia.org/wiki/%E6%95%B0%E7%90%86%E8%AB%96%E7%90%86%E5%AD%A6
1bitの変数A,Bがあるとき、以下を定義します。
・A and B、A∧BをA*BもしくはAB、A・Bといったパターンで記載する。これを論理積という、どちらか一方が0の場合論理積も0。両方が1の時のみ論理積も1とする。(0*0あるいは0*1は0という整数の計算に同じ。)
・A or B 、A∨BをA+Bと記載する。これを論理和と言い、両方が0の時のみ論理和も0。片方が1の時論理和も1とする。(0+0=0、0+1=1。という点は整数の計算に同じ。1+1でも1になることだけ注意。)
・bitの反転を¬Aと記載する。(ノットエーと読む)。これを否定という。0だったときは1,1だったときは0となる。
偶数回反転されると元に戻る。
論理演算の基本については上記の3つの演算がすべての基本である。
なお、この概念が論理演算・集合論・論理回路図において全く同じ概念が利用できるので、基本情報とかで論理回路図を利用する問題やベン図が出てくる問題は見栄えが違うだけで中身が同じであることを忘れてはならない。
ちなみにブール代数学とも非常に中身が近い。
ちなみにプログラミングでも条件付けを行う際に滅茶苦茶使うので是非是非覚えておいてください。
ちょっと執筆時間足らないので、以下の項目については書き足す方向で...。
ということで追記しましょう。
- XOR
¬A・B+A・¬B という式で表現される。
A,Bの値が異なるときに1、値が同じ時に0という論理回路。
使い勝手が良いせいで独立した回路としてすごくよくつかわれる。
ちなみにXORだけあればOR,ANDともに表現が可能であるため、XOR回路を大量に準備して回路組む場合もあったり。
- ド・モルガンの法則
¬(A・B)=¬A+¬B , ¬(A+B)=¬A・¬B
というモルガン卿発見の法則。
集合論でも出てくるけどこっちでも出てくる。基本情報に計算問題としてめっちゃよく出てくる。
¬((¬A+B)・(A+¬C))と等しいものはどれか。ここで、・は論理積、+は論理和、¬XはXの否定をあらわす。
ア:A・¬B+¬A・C イ:¬A・B+A・¬C ウ:(A+¬B)・(¬A+C) エ:(¬A+B)・(A+¬C)
基本情報 平成23年特別 午前問1
- 半加算器と全加算器
電卓とか作る際に1bitをINT値として処理する際に排他的論理和と論理積を利用することで桁上がりする1bitの足し算回路が作れる。
2進数を用いた足し算で1+1=10、を表現するための回路。繰り上がった桁をキャリーという。
んでもって、半加算器で表現できるのは最右の1bit(繰り上がりがない桁)だけになります。
では入力にもキャリーを入れて並べたらそれで複数bit同士の足し算できるんでないの?というところから生まれたのが全加算器になります。
足し算・引き算だけの簡単な電卓を回路で作る実習とかするときはこのくらいまで考える必要があるので地味ーに面倒くさかったり。
基本情報レベルだと午後問として半加算器・全加算器の問題が出てくることがあるので覚えておくに越したことは無いです。
- 物理的な論理回路の作り方(AND 、OR 、NOT)
回路系の専門書でも出てこないことが多いけど俺Tueeeの転生物作品作りたい人は覚えといて損はない知識w
なお吹越、なろう小説あさり20年くらいやってるけど、計算機まで現地生産した転生物なんかノーライフ・ライフ(https://ncode.syosetu.com/n8390n/)しか知らない。
異世界スマホとか持ち込んだものは除外するけど。
閑話休題。
上記の通り回路についてはAND,OR,NOTの3つが基本なんだけど、それをどう作るかというのは割と難しい。
https://ja.wikibooks.org/wiki/%E9%AB%98%E7%AD%89%E5%AD%A6%E6%A0%A1%E6%83%85%E5%A0%B1/%E6%83%85%E5%A0%B1%E3%81%AE%E7%A7%91%E5%AD%A6/%E8%AB%96%E7%90%86%E5%9B%9E%E8%B7%AF%E3%81%A8%E5%8D%8A%E5%B0%8E%E4%BD%93
ダイオードで作れるけどダイオードとかNP型ダイオーとかPN型ダイオードがあり(物理の授業範囲)、リンやアルミニウム入りガラスで作れたりする。
ダイオードの原理については以下参照。
https://www.nicovideo.jp/watch/sm31817397
ひどすぎる説明だけど概ね合ってる。シリーズ見るといいよ。
あとは同作者の科学単位解説も見るといいよ。
2回目を見ると今回の物理的な論理回路の作り方解説してるよw
ということで書き足し終わり。