Perl Bitwise Operators


Bitwise operator works on bits and performs bit by bit operation. Assume if $a = 60; and $b = 13; Now in binary format they will be as follows −

$a = 0011 1100
$b = 0000 1101
-----------------
$a&$b = 0000 1100
$a|$b = 0011 1101
$a^$b = 0011 0001
~$a = 1100 0011

There are following Bitwise operators supported by Perl language, assume if $a = 60; and $b = 13

Sr.No.Operator & Description
1&
Binary AND Operator copies a bit to the result if it exists in both operands.
Example− ($a & $b) will give 12 which is 0000 1100
2|
Binary OR Operator copies a bit if it exists in either operand.
Example− ($a | $b) will give 61 which is 0011 1101
3^
Binary XOR Operator copies the bit if it is set in one operand but not both.
Example− ($a ^ $b) will give 49 which is 0011 0001
4~
Binary One's Complement Operator is unary and has the effect of 'flipping' bits.
Example− (~$a ) will give -61 which is 1100 0011 in 2's complement form due to a signed binary number.
5<<
Binary Left Shift Operator. The left operand's value is moved left by the number of bits specified by the right operand.
Example− $a << 2 will give 240 which is 1111 0000
6>>
Binary Right Shift Operator. The left operand's value is moved right by the number of bits specified by the right operand.
Example− $a >> 2 will give 15 which is 0000 1111

Updated on: 29-Nov-2019

219 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements