xor (boolean a, boolean b) ⇒ boolean
Returns the exclusive-or (XOR) on two boolean values. i.e. !($a && $b) && ($a || $b).
First available: Version 1.4.3
Notes
XOR (⊕) is based on the logic that is provided by underlying logic gates made of transistors. As such, XOR is true if and only if one condition is true. The truth table for OR and XOR is shown below:
P | Q | P ∨ Q | P ⊕ Q |
---|---|---|---|
True | True | True | False |
True | False | True | True |
False | True | True | True |
False | False | False | False |
Using XOR to construct a 1 bit adder
YASS
function adder($a, $b, $c) $sum = xor(xor($a, $b), $c) $carry = (xor($a, $b) and $c) or ($a and $b) return ["result" => $sum, "carry" => $carry] end function function main() print(adder(1, 0, 0)) print(adder(0, 0, 1)) print(adder(1, 1, 0)) end function
For more on adders, visit this page.
Comments