bitwiseor: Difference between revisions

From RPTools Wiki
Jump to navigation Jump to search
(New page: ==Function band== Performs a bitwise 'and' operation of the {number} arguments by taking the binary representation of each of the numbers and performing the logical and operation on each o...)
 
m (Text replacement - "<source" to "<syntaxhighlight")
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
==Function band==
{{MacroFunction
Performs a bitwise 'and' operation of the {number} arguments by taking the binary representation of each of the numbers and performing the logical and operation on each of the bits.
|name=bitwiseor
|description=Performs a bitwise 'or' operation of the number arguments by taking the binary representation of each of the numbers and performing the logical or operation on each of the bits.


'''Logical "and" Table'''
'''Logical "or" Table'''
{|
{{{!}}
|Bit1 || Bit2 || Result
{{!}}Bit1 {{!}}{{!}} Bit2 {{!}}{{!}} Result
|-
{{!}}-
|align=center| 0 || align=center| 0 || align=center| 0
{{!}}align=center{{!}} 0 {{!}}{{!}} align=center{{!}} 0 {{!}}{{!}} align=center{{!}} 0
|-
{{!}}-
|align=center| 0 || align=center| 1 || align=center| 0
{{!}}align=center{{!}} 0 {{!}}{{!}} align=center{{!}} 1 {{!}}{{!}} align=center{{!}} 1
|-
{{!}}-
|align=center| 1 || align=center| 1 || align=center| 1
{{!}}align=center{{!}} 1 {{!}}{{!}} align=center{{!}} 1 {{!}}{{!}} align=center{{!}} 1
|}
{{!}}}


|usage=
<syntaxhighlight lang="mtmacro" line>
[h: val = bor(num, num, ...)]
[h: val = btwiseor(num, num, ...)]
</syntaxhighlight>


===Usage===
|examples=
<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[h: val = band(num, num, ...)]
[r: bor(1,0)]
[h: val = btwiseand(num, num, ...)]
</syntaxhighlight>
</source>
Returns 1.
 
<syntaxhighlight lang="mtmacro" line>
[r: bor(1,1)]
</syntaxhighlight>
Returns 1.


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


<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[r: band(1,1)]
[r: bor(2, 4]
</source>
</syntaxhighlight>
Returns 1.
Returns 6.
 
2 in binary is 010 and 4 in binary is 100, so a bitwise or of these two values is 110 which is 6 in decimal.
<source lang="mtmacro" line>
[r: band(3, 5]
</source>
Returns 1.
3 in binary is 011 and 5 in binary is 101, the bitwise 'and' of these values is 001 in binary which is 1 in decimal.


<source lang="mtmacro" line>
<syntaxhighlight lang="mtmacro" line>
[r: band(20, 12)]
[r: band(20, 12)]
</source>
</syntaxhighlight>
Returns 4.       
Returns 4.       
20 in binary is 10100 and 12 in binary is 01100, the bitwise 'and' of these values is 00100 in binary which is 4 in decimal.
20 in binary is 10100 and 12 in binary is 01100, the bitwise 'and' of these values is 00100 in binary which is 4 in decimal.
}}
[[Category:Logical Function]]

Latest revision as of 17:39, 14 March 2023

bitwiseor() Function

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

Logical "or" Table

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

Usage

[h: val = bor(num, num, ...)]
[h: val = btwiseor(num, num, ...)]

Examples

[r: bor(1,0)]

Returns 1.

[r: bor(1,1)]

Returns 1.

[r: bor(0,0)]

Returns 0.

[r: bor(2, 4]

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

[r: band(20, 12)]

Returns 4.

20 in binary is 10100 and 12 in binary is 01100, the bitwise 'and' of these values is 00100 in binary which is 4 in decimal.