論理演算
ここでは2進数における演算について説明します。
2進数では論理演算という演算が定義されており、四則演算はこれらを用いています。
詳しくは以下を参照してください。
2進数の加算
2進数の減算
2進数の乗除算
尚、ここで言う論理演算は1ビットの演算の概念のことを指します。
論理演算子で言及している論理演算はC言語の文法上で一般的な論理演算を示すものであり、1ビットの論理演算を実装するのがビット演算子で定義しているビット演算です。
論理和
2項の値のどちらか一方でも1ならば1、そうでないならば0となる演算です。
日本語なら「または」と表現できます。
演算子の記号は「+」です。
以下が真理値表です。
A | B | A + B |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
論理積
2項が両方とも1ならば1、そうでないならば0となる演算です。
日本語ならば「かつ」と言えます。
記号は「・」です。
以下が真理値表です。
A | B | A ・ B |
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
否定
名前の通り否定です。0ならば1、1ならば0になります。
「‾」で表します。
A | ‾A |
0 | 1 |
1 | 0 |
排他的論理和
排他的論理和は2項の値が違えば1、同じなら0になります。
記号は「⊕」です。
以下が真理値表です。
A | B | A ⊕ B |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
また上記の演算を組み合わせて別の演算をつくることができます。