talosのプログラミング教室

【基本・応用情報技術者】真理値表の使い方

スポンサーリンク

こんにちは。たろすです。

今回は真理値表の使い方を説明します。

基礎

真理値表は論理式の変形が難しい場合などに役立ちます。

まず基礎的な説明からしていきます。

扱う変数が2つの場合、それぞれの変数がとり得る値の組み合わせは
 (A,B)=\{(0,0),(0,1),(1,0),(1,1)\}
の4通りです。

 A Bの列にはこの組み合わせを書きます。

そして A \cdot Bの列を埋めていきます。

 A \cdot Bが1となるのは A Bがともに1のときなので、 (A,B)=\{(0,0),(0,1),(1,0)\}のときは0、 (A,B)=\{(1,1)\}のときは1 が入ります。

(なぜ A \cdot Bが1となるのは A Bがともに1のときなのかというと、そういう決まりだからです。)

f:id:talosta:20210414150118p:plain

同様に A Bの列を作り、 A + Bの列を埋めていきます。

 A + Bが1となるのは A Bのどちらかあるいは両方が1のときなので、 (A,B)=\{(0,0)\}のときは0、 (A,B)=\{(0,1),(1,0),(1,1)\}のときはは1が入ります。

f:id:talosta:20210414151403p:plain

排他的論理和

同様に A Bの列を作り、 A \oplus Bの列を埋めていきます。

 A \oplus Bが1となるのは A Bのどちらか一方のみが1のときなので、 (A,B)=\{(0,0),(1,1)\} のときは0、 (A,B)=\{
(0,1),(1,0)\}のときは1が入ります。

f:id:talosta:20210414165206p:plain

含意

同様に A Bの列を作り、 A \to Bの列を埋めていきます。

 A \to Bが0となるのは Aが1で Bが0のときなので、 (A,B)=\{(1,0)\} のときは0、 (A,B)=\{
(0,0),(0,1),(1,1)\}のときは1が入ります。

f:id:talosta:20210414153620p:plain

否定

 Aの列を作り、 \overline{A}の列を埋めていきます。

これは値を反転させるだけです。

f:id:talosta:20210414154024p:plain

応用

実際の使い方を説明します。

基本情報技術者試験応用情報技術者試験では論理式1つが提示され、その論理式と等価の論理式を4つから選ぶといった問題がよく出ます。

変形するのが難しいときは真理値表を使いましょう。

例えば、「 \overline{A \cdot B}と等しい論理式を選べ」という問題が出たときに、選択肢の中に \overline{A} + \overline{B}があったとしましょう。

それぞれの真理値表を書いてあげます。

f:id:talosta:20210414165734p:plain

 \overline{A \cdot B} \overline{A} + \overline{B}の真理値表が一致しているのでこれらは等価ということがわかります。

おわりに

今回は真理値表の使い方について説明しました。

論理式の変形が難しいときは重宝するので覚えておきましょう。