- Perl 基础
- Perl - 首页
- Perl - 简介
- Perl - 环境
- Perl - 语法概述
- Perl - 数据类型
- Perl - 变量
- Perl - 标量
- Perl - 数组
- Perl - 哈希表
- Perl - IF...ELSE
- Perl - 循环
- Perl - 运算符
- Perl - 日期和时间
- Perl - 子程序
- Perl - 引用
- Perl - 格式
- Perl - 文件 I/O
- Perl - 目录
- Perl - 错误处理
- Perl - 特殊变量
- Perl - 编码规范
- Perl - 正则表达式
- Perl - 发送电子邮件
- Perl 高级
- Perl - 套接字编程
- Perl - 面向对象
- Perl - 数据库访问
- Perl - CGI 编程
- Perl - 包和模块
- Perl - 进程管理
- Perl - 嵌入式文档
- Perl - 函数引用
- Perl 有用资源
- Perl - 问答
- Perl - 快速指南
- Perl - 有用资源
- Perl - 讨论
Perl 位运算符示例
Perl 语言支持以下位运算符,假设 $a = 60; $b = 13 −
| 序号 | 运算符和描述 |
|---|---|
| 1 | & 二进制 AND 运算符:如果该位同时存在于两个操作数中,则将其复制到结果中。 示例 − ($a & $b) 将得到 12,即 0000 1100 |
| 2 | | 二进制 OR 运算符:如果该位存在于任一操作数中,则将其复制。 示例 − ($a | $b) 将得到 61,即 0011 1101 |
| 3 | ^ 二进制 XOR 运算符:如果该位在一个操作数中设置,但在另一个操作数中未设置,则将其复制。 示例 − ($a ^ $b) 将得到 49,即 0011 0001 |
| 4 | ~ 二进制非运算符:是一元运算符,其作用是“反转”位。 示例 − (~$a) 将得到 -61,由于是有符号二进制数,因此其二进制补码形式为 1100 0011。 |
| 5 | << 二进制左移运算符:左操作数的值向左移动由右操作数指定的位数。 示例 − $a << 2 将得到 240,即 1111 0000 |
| 6 | >> 二进制右移运算符:左操作数的值向右移动由右操作数指定的位数。 示例 − $a >> 2 将得到 15,即 0000 1111 |
示例
尝试以下示例以了解 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
perl_operators.htm
广告