ナギサものおき

ゲームを楽しく遊びたい!

【Minecraft PE】RS回路で計算機を作ろう 第1回「真理値表」

time 2016/02/26

【Minecraft PE】RS回路で計算機を作ろう 第1回「真理値表」

レッドストーン回路は、「入力をどのように操作すれば、どのような出力が得られるか」を決めるためのものですよね(例えば、レバーをONにすればランプがつくというように)。論理回路を使えば、もう少し複雑な条件にすることもできました。

それなら、例えば入力を「2つの数字」、出力を「2つの数字の和(足し算)」というようにすることもできるはずです。つまり「足し算ができる計算機」はレッドストーン回路で作ることができる、というわけなのです。この連載では、その計算機を実際に作ってみましょうね。

ただし、スムーズに進めるために最初に教えておくべきことがあります。そちらに少々お付き合いください。

広告

背景知識

この連載では、これまでこのブログで紹介してきたレッドストーン回路の知識をフル活用していきます。というわけで、下の2つの記事と、そこからリンクされている記事を十分に読んで活用できるくらいでないと難しいかもしれません。

161【Minecraft PE】ver 0.13から実装、レッドストーン回路の使い方

098【Minecraft PE】0.14.0で追加されたレッドストーン回路の装置を紹介

例えば「ON/OFF」、「信号強度」、「論理回路」などといった言葉を説明なしで出していきます(その都度振り返れるようにリンクは貼るつもりですが)。OKだったら進みましょう!

真理値表

さて、今回知るべき知識は「真理値表(しんりちひょう)」です。

216

この表は、「論理回路の入力がどういう組み合わせなら、出力がどうなる」というのを表にしたものです。これを作ると、目的(この連載の場合は「計算機を作る」)を達成するには、どのような論理回路を作ればよいのかが分かりやすくなります

といっても何のことやら分かりづらいと思うので、まずは例としてAND回路の真理値表を書きます。

AND回路

216

最初に、入力と出力に名前を付けます。2つの入力はそれぞれA,B、そして出力はO(”Output”の頭文字です)としましょう。

それで、それぞれの入力を操作してみて、「AとBがどうなったとき、Oはどうなる?」というのを書き出していけばいいだけです。

  • AもBもOFFのとき  →  OはOFF
  • AがOFFで、BがONのとき  →  OはOFF
  • AがONで、BがOFFのとき  →  OはOFF
  • AもBもONのとき  →  OはON

こうなるはずですね。実は、これを表として書くだけで真理値表になります

AND回路の真理値表
入力A 入力B 出力O
OFF OFF OFF
OFF ON OFF
ON OFF OFF
ON ON ON

この表は、横方向(行)を注目してください。例えば「AND回路の出力がONになる条件」を知りたいと思ったら、出力OがONになる行を探せばよいのです。そこを見ると、

入力A 入力B 出力O
ON ON ON

となっていますから、AもBもONのときだと分かるわけですね。

ただし今後は慣例にならって、OFFを0、ONを1と書くことにします。ただ書き方が変わるだけです。

AND回路の真理値表
入力A 入力B 出力O
0 0 0
0 1 0
1 0 0
1 1 1

そういうわけで、これでAND回路の真理値表は完成です。

OR回路、NOT回路

理解できたか確かめるために、少しだけ問題に挑戦してもらいましょう。

Q1:OR回路の真理値表を書いてください

217

ヒント:AND回路で作った真理値表を参考にしながら、また「入力がどういう組み合わせなら出力がどうなるか」を考えましょう。

Q2:NOT回路の真理値表を書いてください

218

ヒント:入力が1つしかないので、場合としてはAが1なのか0なのか、の2通りしかあり得ませんね。つまり、この2通りを表わせれば十分です。

それでは解答をご覧ください。不正解でも覚えて帰っていただければそれでいいです。

A1:OR回路の真理値表

OR回路の真理値表
入力A 入力B 出力O
0 0 0
0 1 1
1 0 1
1 1 1

こうなります。出力Oが0の行は1つしかなく、そこを見ると入力AもBも0ですね。つまり、「OR回路は入力の両方が0のときだけ、0を出力」というルールがこの表を見ただけですぐに分かる、というわけなのです。便利でしょう。

A2:NOT回路の真理値表

NOT回路の真理値表
入力A 出力O
0 1
1 0

入力が1つだけなので少し勝手が違いますが、正解を見れば納得ではないでしょうか。入力が0なら出力が1、そして入力が1なら出力が0というだけなのですから、これだけで十分です。

余談

実はある程度の方々から、0.13が最新版だった時点で「計算機について教えてほしい」というリクエストがあったのですが、それは現時点まで保留させていただいていたということになりますね。

なぜなのかというと、0.13時点での回路の装置の種類の少なさがネックだったからです。

214

論理回路XORはこの連載で計算機を作るときにかなり多く使う予定なのですが、0.13でも作ることができたトーチしか使わないバージョン(上の画像)はかなり場所をとります。

150

コンパレーターを使用することで、もっとコンパクトにすることができたんでしたね。

というわけで、装置が追加されるまではおとなしくしていました。どうせ作るなら、コンパクトにできる環境が整ってからやろうと思っていたということなのです。

終わりに

今回お教えした真理値表なのですが、実は普通に学問として通用します。高校とか大学の分野によっては教えているところがあります(というか筆者は実際に学びました)。もしあなたがそれより若くても、知っていれば論理的な考え方が身についているということなので非常に良いことだと思います。

242【Minecraft PE】RS回路で計算機を作ろう 第2回「2進数」

次回は、もう1つだけ知識の補充にお付き合いください。2進数について学んでいきましょう。

広告

down

コメントする




動作報告や質問など、記事に関係する話題にお使いください。サイトポリシー

記事まとめ

ブログについて