代数法則の観点から考えると、代数と同様に、ビット操作の領域に存在する公式のガイドラインがあるかどうか疑問に思っていました。
代数の例
a - b =/= b - a
させa = 7
てb = 5
a - b = 2
b - a = -2
させa = 10
てb = 3
a - b = 7
b - a = -7
したがってif a > b
、b - a
は に相当する負の値になりa - b
ます。このため、と言えます
|a - b| = |b - a|
。
どこ|x|
で の絶対値を示しますx
。
ビット単位の例
a | b =/= a + b
00001010 = 10
OR 00000101 = 5
-----------------
00001111 = 15
符号なしバイト操作に注意してください:10 | 5 = 15
と同義です。10 + 5 = 15
ただし、両方a
とb
が 5 に等しい場合OR
、結果は 5 になりa = b
ます。これは、まったく同じビットを互いに比較しているだけであるため、新しい結果は何もないことを意味します。
同様に、 の場合b = 7
、それらa = 10
をOR
15 にします。これは、
00001010 = 10
OR 00000111 = 7
-----------------
00001111 = 15
したがって、効果的にそれを結論付けることができa | b =/= a + b
ます。