Exemple d'opérateurs binaires Perl

Les opérateurs Bitwise suivants sont pris en charge par le langage Perl, supposons que si $ a = 60; et $ b = 13 -

N ° Sr. Opérateur et description
1

&

L'opérateur binaire AND copie un bit dans le résultat s'il existe dans les deux opérandes.

Example - ($ a & $ b) donnera 12 qui est 0000 1100

2

|

L'opérateur binaire OR copie un peu s'il existe dans l'opérande eather.

Example - ($ a | $ b) donnera 61 qui est 0011 1101

3

^

L'opérateur XOR binaire copie le bit s'il est défini dans un opérande mais pas dans les deux.

Example - ($ a ^ $ b) donnera 49 soit 0011 0001

4

~

Binary Ones Complement Operator est unaire et a pour effet de «retourner» les bits.

Example - (~ $ a) donnera -61 qui est 1100 0011 sous forme de complément à 2 en raison d'un nombre binaire signé.

5

<<

Opérateur de décalage binaire gauche. La valeur des opérandes de gauche est déplacée vers la gauche du nombre de bits spécifié par l'opérande de droite.

Example - $ a << 2 donnera 240 soit 1111 0000

6

>>

Opérateur de décalage binaire vers la droite. La valeur des opérandes de gauche est déplacée vers la droite du nombre de bits spécifié par l'opérande de droite.

Example - $ a >> 2 donnera 15, soit 0000 1111

Exemple

Essayez l'exemple suivant pour comprendre tous les opérateurs binaires disponibles en Perl. Copiez et collez le programme Perl suivant dans le fichier test.pl et exécutez ce programme.

#!/usr/local/bin/perl

use integer;
 
$a = 60;
$b = 13;

print "Value of \$a = $a and value of \$b = $b\n";

$c = $a & $b;
print "Value of \$a & \$b = $c\n";

$c = $a | $b;
print "Value of \$a | \$b = $c\n";

$c = $a ^ $b;
print "Value of \$a ^ \$b = $c\n";

$c = ~$a;
print "Value of ~\$a = $c\n";

$c = $a << 2;
print "Value of \$a << 2 = $c\n";

$c = $a >> 2;
print "Value of \$a >> 2 = $c\n";

Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -

Value of $a = 60 and value of $b = 13
Value of $a & $b = 12
Value of $a | $b = 61
Value of $a ^ $b = 49
Value of ~$a = -61
Value of $a << 2 = 240
Value of $a >> 2 = 15