bit.bxor
From ComputerCraft Wiki
Revision as of 18:28, 28 November 2012 by AfterLifeLochie (Talk | contribs) (Moved to CAT:APIFunctions)
| Computes the bitwise exclusive OR of two numbers | |
| Syntax | bit.bxor(int m, int n) |
| Returns | int the value of m XOR n |
| Part of | ComputerCraft |
| API | bit |
Examples
| XOR the number 18 (10010) with the number 3 (00011), yielding 17 (10001) | |
| Code |
print(bit.bxor(18, 3)) |
| Output | 17 |
Explanation
All bit operations operate in binary numeral system [1]. An exclusive OR operation between two bits yields a 1 if the bits are unequal and a 0 if they are equal. This function produces an output by computing the XOR of each bit of its two inputs independently. So, for the example above:
| Bit index: | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|
| Input 1 (18): | 1 | 0 | 0 | 1 | 0 |
| Input 2 (3): | 0 | 0 | 0 | 1 | 1 |
| Calculation: | 1 ≠ 0 | 0 = 0 | 0 = 0 | 1 = 1 | 0 ≠ 1 |
| Output (17): | 1 | 0 | 0 | 0 | 1 |