こんにちは。いつも論理が破綻している氷河期の住人だよ。
さっそくですが、論理回路はご存知ですか?
プログラミングするには必須なんですが、当然LabVIEWにも論理回路はあります。
ポイントですが、そんなにありません。しいて言うなら下の2つです。
Point!同じANDやORでもバリエーションがあるので、見やすいものを選ぼう
包含はよくわからないし、たぶん使わないので置いとこう
論理回路を使いこなそう!
急に論理回路って言われても・・というかたは、下を読んでみてください。
論理回路って何?
論理回路は簡単に言うと、0(False)か1(True)で表られる論理値を論理演算子でつないで回路にしたものです。ANDとかORってやつです。
論理回路-Wikipedia
LabVIEWの論理回路ノード一覧
1.AND, NAND(Not AND)回路

AND回路
入力をA,Bとすると、「AかつBがTrue」の場合にTrue(1)を出力します。
A |
B |
出力 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
NAND回路
AND回路の逆を出力します。余談ですが、NAND回路だけで全論理回路が表現できるのです。
A |
B |
出力 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
2.OR,NOR(Not OR)回路

OR回路
入力をA,Bとすると、「AまたはBがTrue」の場合にTrue(1)を出力します。
A |
B |
出力 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
NOR回路
OR回路の逆です。NORだけでも全論理回路が表現できます。
A |
B |
出力 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
3.XOR,XNOR(Not XOR)回路

XOR回路
「排他的論理和」と呼ばれるもので、「ABどちらかだけTrue」の場合にTrue(1)を出力します。
比較をする時なんかに使うと、違いを「True」で出力してくれるのでいいですね。
A |
B |
出力 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
XNOR(NXOR)回路
今までの流れから言うとNXORじゃないのか?と思いますが、XNORがスタンダードです。
A |
B |
出力 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
4.NOT回路

これは簡単ですね。入力の反対を出力します。
資格取得・就転職を目指す方のための総合専門校「ヒューマンアカデミー」
5.包含

最初なんと読むのかすらわかりませんでした。「ほうがん」です。
AならばBということですが・・・説明を読んでもさっぱりわかりません。もちろん使ったこともありません。
論理包含-Wikipedia
A |
B |
出力 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
6.複合演算

実は数値演算でも出てきたノードです。
3つ以上のAND、OR、XORができます。
上画面のXOR複合の入出力に小さい〇が付いてるけど何?
実はNOT回路を入れることができます。
ちょうどノードの線が出ているところで右クリックをすると以下のように「Invert」って出てきますので、これをクリックするとNOT回路が入ります。便利ですが、ちょっと見づらいので注意です。

7.配列のANDとOR
配列(同じデータ系列の集まり)をまとめてAND、ORできます。
地味に使えるノードです。

おわりに
ここまで読んで頂き、ありがとうございました。
ブールの計算をするだけなんですが、実にいろんな表現があります。
LabVIEWの最大の問題点でもあるのが、ノードの大きさが小さい上に拡大できないことです。
非常に見えにくいので、いかに間違えにくい記述にするかがLabVIEWプログラミングのコツです。
次回は使用頻度が高い「比較」を紹介します!
データ型についてはコチラ
LabVIEWで取り扱うデータ型と、その取扱いについて
LabVIEW画面の見方はコチラ
制御器と表示器、ブロックダイアグラムの基礎【LabVIEW】