This documentation is out of date.
The new version of the documentation is here: https://cannylogic.com/docs |
Difference between revisions of "Bitwise AND"
From CANNY Wiki
[unchecked revision] | [unchecked revision] |
(Created page with " <div style="float:right;margin:5px;"> {|class="cannytable" width="350px" |- !colspan="2" style="background-color:#AFEEEE;"|Appearance |- |colspan="2" align="center" style="...") |
m (minor edit) |
||
(8 intermediate revisions by 3 users not shown) | |||
Line 6: | Line 6: | ||
!colspan="2" style="background-color:#AFEEEE;"|Appearance | !colspan="2" style="background-color:#AFEEEE;"|Appearance | ||
|- | |- | ||
− | |colspan="2" align="center" style="padding:10px;"|[[ | + | |colspan="2" align="center" style="padding:10px;"|[[File:5_4_1_2.png]] |
|- | |- | ||
!colspan="2" style="background-color:#AFEEEE;"|Symbol | !colspan="2" style="background-color:#AFEEEE;"|Symbol | ||
Line 14: | Line 14: | ||
!colspan="2" style="background-color:#AFEEEE;"|Group | !colspan="2" style="background-color:#AFEEEE;"|Group | ||
|- | |- | ||
− | |colspan="2" align="center"|[[Built-in Function Blocks | Bitwise operators]] | + | |colspan="2" align="center"|[[Built-in Function Blocks#Bitwise operators | Bitwise operators]] |
|- | |- | ||
!colspan="2" style="background-color:#AFEEEE;"|Inputs | !colspan="2" style="background-color:#AFEEEE;"|Inputs | ||
|- | |- | ||
− | + | |style="padding-left:1em;"|Value X: | |
− | + | |style="padding-left:1em;"|[[CFD Language#Data|Integer]] | |
− | |style="padding-left:1em;"|X | + | |
− | |style="padding-left:1em;"|[[CFD Language#Data| | + | |
|- | |- | ||
− | |style="padding-left:1em;"| | + | |style="padding-left:1em;"|Value Y: |
− | |style="padding-left:1em;"|[[CFD Language#Data| | + | |style="padding-left:1em;"|[[CFD Language#Data|Integer]] |
|- | |- | ||
!colspan="2" style="background-color:#AFEEEE;"|Outputs | !colspan="2" style="background-color:#AFEEEE;"|Outputs | ||
|- | |- | ||
|style="padding-left:1em;"|Result: | |style="padding-left:1em;"|Result: | ||
− | |style="padding-left:1em;"|[[CFD Language#Data| | + | |style="padding-left:1em;"|[[CFD Language#Data|Integer]] |
|- | |- | ||
!colspan="2" style="background-color:#AFEEEE;"|Version [[CANNY Lab]] | !colspan="2" style="background-color:#AFEEEE;"|Version [[CANNY Lab]] | ||
Line 39: | Line 37: | ||
<div style="min-height:100%;display:block;"> | <div style="min-height:100%;display:block;"> | ||
<div style="float:left;width:70px;"> | <div style="float:left;width:70px;"> | ||
− | [[ | + | [[File:5_4_1_1.png|left|Icon]] |
</div> | </div> | ||
<div> | <div> | ||
− | + | A function block used for bitwise logical multiplication (conjunction). Sets the output value to be the result of logical multiplication, that is applied to each pair of bits located at the same position in the binary representation of input values. | |
</div> | </div> | ||
</div> | </div> | ||
<br clear="left"> | <br clear="left"> | ||
− | + | In other words, the resulting bit of the output value is equal to: | |
− | * | + | * "1" if both respective bits of the input values are equal to "1"; |
− | * | + | * "0" if at least one bit of the pair is "0". |
− | + | For example: | |
{|border="0" style="border-collapse:collapse;" | {|border="0" style="border-collapse:collapse;" | ||
|- | |- | ||
− | |style="padding:5px;"| | + | |style="padding:5px;"|Value X |
|style="padding:5px;"|= | |style="padding:5px;"|= | ||
|style="padding:5px;"|27 | |style="padding:5px;"|27 | ||
Line 63: | Line 61: | ||
|style="padding:5px;"|0b0000000000011011 | |style="padding:5px;"|0b0000000000011011 | ||
|- | |- | ||
− | |style="padding:5px;"| | + | |style="padding:5px;"|Value Y |
|style="padding:5px;"|= | |style="padding:5px;"|= | ||
|style="padding:5px;"|58 | |style="padding:5px;"|58 | ||
Line 71: | Line 69: | ||
|align="center"|0b0000000000111010 | |align="center"|0b0000000000111010 | ||
|- | |- | ||
− | |style="padding:5px;"| | + | |style="padding:5px;"|Result |
|style="padding:5px;"|= | |style="padding:5px;"|= | ||
|style="padding:5px;"|26 | |style="padding:5px;"|26 | ||
Line 80: | Line 78: | ||
|} | |} | ||
− | == | + | == Features == |
− | + | Operation 'Bitwise AND' is used to [//en.wikipedia.org/wiki/Mask_(computing) mask] — to select specific bits or fields from several bits of a binary number. | |
− | == | + | == Examples == |
{| | {| | ||
− | |[[ | + | |[[File:5_4_1_3.png|thumb|400px|As decimal]] |
− | |[[ | + | |[[File:5_4_1_4.png|thumb|500px|As binary]] |
|} | |} | ||
− | == | + | == See also == |
− | [[ | + | [[Bitwise OR]] |
− | [[ | + | [[Bitwise exclusive OR]] |
− | [[ | + | [[Bitwise Inversion]] |
− | [[ | + | [[Left shift]] |
− | [[ | + | [[Right shift]] |
− | [[ | + | [[Left rotation]] |
− | [[ | + | [[Right rotation]] |
− | [[ | + | [[Built-in_Function_Blocks | Built-in Function Blocks]] |
Latest revision as of 17:31, 13 December 2020
Appearance | |
---|---|
Symbol | |
X & Y | |
Group | |
Bitwise operators | |
Inputs | |
Value X: | Integer |
Value Y: | Integer |
Outputs | |
Result: | Integer |
Version CANNY Lab | |
from 0.6b |
A function block used for bitwise logical multiplication (conjunction). Sets the output value to be the result of logical multiplication, that is applied to each pair of bits located at the same position in the binary representation of input values.
In other words, the resulting bit of the output value is equal to:
- "1" if both respective bits of the input values are equal to "1";
- "0" if at least one bit of the pair is "0".
For example:
Value X | = | 27 | = | 0x001B | = | 0b0000000000011011 |
Value Y | = | 58 | = | 0x003A | = | 0b0000000000111010 |
Result | = | 26 | = | 0x001A | = | 0b0000000000011010 |
Features
Operation 'Bitwise AND' is used to mask — to select specific bits or fields from several bits of a binary number.