当前位置: 首页 > 文档资料 > Perl 入门教程 >

Show Example 5

优质
小牛编辑
116浏览
2023-12-01

Perl语言支持以下Bitwise运算符,假设$ a = 60; 和$ b = 13 -

Sr.No.操作符和说明
1

&

如果二进制AND运算符存在于两个操作数中,则它会将结果复制到结果中。

Example - ($ a和$ b)将给出12,即0000 1100

2

|

如果二进制OR运算符存在于eather操作数中,则复制一位。

Example - ($ a | $ b)将给出61这是0011 1101

3

^

二进制异或运算符如果在一个操作数中设置但不在两个操作数中设置,则复制该位。

Example - ($ a ^ $ b)将给出49,即0011 0001

4

~

二元一元补语运算符是一元的,具有“翻转”位的效果。

Example - (〜$ a)将给出-61,由于带符号的二进制数,它是2的补码形式的1100 0011。

5

《《

二进制左移运算符。 左操作数值向左移动右操作数指定的位数。

Example - $ a“”2将给出240,即1111 0000

6

》》

二进制右移运算符。 左操作数值向右移动右操作数指定的位数。

Example - $ a“”2将给出15,即0000 1111

例子 (Example)

尝试以下示例以了解Perl中可用的所有按位运算符。 将以下Perl程序复制并粘贴到test.pl文件中并执行该程序。

#!/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";

执行上述代码时,会产生以下结果 -

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