bitwisexor: Difference between revisions

From RPTools Wiki
Jump to navigation Jump to search
m (Text replacement - "source>" to "syntaxhighlight>")
m (Text replacement - "<source" to "<syntaxhighlight")
Line 15: Line 15:


|usage=
|usage=
<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[h: val = bxor(num, num, ...)]
[h: val = bxor(num, num, ...)]
[h: val = bitwisexor(num, num, ...)]
[h: val = bitwisexor(num, num, ...)]
Line 21: Line 21:


|examples=
|examples=
<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[r: bxor(1,0)]
[r: bxor(1,0)]
</syntaxhighlight>
</syntaxhighlight>
Returns 1.
Returns 1.


<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[r: bxor(1,1)]
[r: bxor(1,1)]
</syntaxhighlight>
</syntaxhighlight>
Returns 0.
Returns 0.


<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[r: bxor(0,0)]
[r: bxor(0,0)]
</syntaxhighlight>
</syntaxhighlight>
Returns 0.
Returns 0.


<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[r: bxor(2, 4]
[r: bxor(2, 4]
</syntaxhighlight>
</syntaxhighlight>
Line 42: Line 42:
2 in binary is 010 and 4 in binary is 100, so a bitwise xor of these two values is 110 which is 6 in decimal.
2 in binary is 010 and 4 in binary is 100, so a bitwise xor of these two values is 110 which is 6 in decimal.


<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[r: bxor(6, 4)]
[r: bxor(6, 4)]
</syntaxhighlight>
</syntaxhighlight>

Revision as of 18:00, 14 March 2023

bitwisexor() Function

Performs a bitwise 'exlusive or' operation of the number arguments by taking the binary representation of each of the numbers and performing the logical exclusive or operation on each of the bits.

Logical " exclusive or" Table

Bit1 Bit2 Result
0 0 0
0 1 1
1 1 0

Usage

[h: val = bxor(num, num, ...)]
[h: val = bitwisexor(num, num, ...)]

Examples

[r: bxor(1,0)]

Returns 1.

[r: bxor(1,1)]

Returns 0.

[r: bxor(0,0)]

Returns 0.

[r: bxor(2, 4]

Returns 6. 2 in binary is 010 and 4 in binary is 100, so a bitwise xor of these two values is 110 which is 6 in decimal.

[r: bxor(6, 4)]

Returns 2.

6 in binary is 110 and 4 in binary is 100, so a bitwise xor of these two values is 010 which is 2 in decimal.