<?php
/**
* author:LMS
* createTime:2015/07/22
* desctiption:位运算[ & | ^ ~ ]
* 与&:如果a、b两个值不相同,则与结果为0。如果a、b两个值相同,与结果为1
* 或|:与逻辑中的或一致【只有两个值都为假时才为假,其余都为真】
* 异或【xor】如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0
* 取反【~】:对每一位取反
* 【注意!非 ==>是逻辑运算符,返回是个布尔值
*/ /** 十进制 二进制[取负数【补码知识】 正数-256 ] 255== 1111 1111
* 5 0000 0101
* 12 0000 1100
*(与-and)& ----------------
* 0000 0100 ===》4
*
*(或 - or)| ------------------
* 0000 1101 ===》13
*
*(非-not)! ===》返回一个布尔值
*
* (取反)~5[250] -------------------
* [负数补码]0 1111 1010==>x+256=250==>x=-6【取反这里只是我猜测理解的,若有错,请指正!】
*
* (异或-xor)^ -------------------
* 0000 1001 ===>9
*/
echo 5 & 12;//输出4
echo '<hr>';echo 5 | 12;//输出13
echo '<hr>';//echo !5 ;//返回真,但是不答应,echo是用于打印字符串的,print_r用于打印数组比较方便,var_dump()打印所有类型变量
echo '<hr>';
//echo !0;//!false var_dump(!1);得到是个布尔值,都将输出1==>!true
echo ~5; //输出-6
echo '<hr>';
echo 5^12;//输出9

PHP中关于位运算符 与 或 异或 取反的更多相关文章

  1. php位运算 与 或 异或 取反

    <?php /** php中有4个位运算,分别是&与 |或 ^异或 ~取反 & 两位全为1,结果为1 | 有一位为1,结果为1 ^ 一个为0,一个为1,结果为1 ~ 取反0-&g ...

  2. [Java 泥水匠] Java Components 之二:算法篇之项目实践中的位运算符(有你不懂的哦)

    作者:泥沙砖瓦浆木匠网站:http://blog.csdn.net/jeffli1993个人签名:打算起手不凡写出鸿篇巨作的人,往往坚持不了完成第一章节. 交流QQ群:[编程之美 365234583] ...

  3. python中的位运算符

    按位运算符是把数字看作二进制来进行计算的.Python中的按位运算法则如下,下表中变量 a 为 60,b 为 13,二进制格式如下: a = 0011 1100 b = 0000 1101 ----- ...

  4. js中的位运算符 ,按位操作符

    按位操作符(Bitwise operators) 将其操作数(operands)当作32位的比特序列(由0和1组成),而不是十进制.十六进制或八进制数值.例如,十进制数9,用二进制表示则为1001.按 ...

  5. 关于C语言中的位运算符的学习即应用

    一.运算符的种类和运算规则: &      与:全1则1,有0则0   |       或:有1则1,全0则0   ^   异或:相同为0,不同为1   ~   取反:~是一元运算符,用来对一 ...

  6. Java中的位运算符 &、|、^、~、<< 和 >>

    一.& 按位与运算符 5 & 3 = 1 5转换为二进制:0000 0000 0000 0000 0000 0000 0000 0101 3转换为二进制:0000 0000 0000 ...

  7. PHP中为位运算符(几乎很少用)

    PHP语言里的位运算符&.|.^ .~.〈〈 .〉〉 "&" 按位与运算 按位与运算符"&"是双目运算符.其功能是参与运算的两数各对应的 ...

  8. Javascript中的位运算符和技巧

    ECMAScript 整数有两种类型,即有符号整数(允许用正数和负数)和无符号整数(只允许用正数).在 ECMAScript 中,所有整数字面量默认都是有符号整数,这意味着什么呢? 有符号整数使用 3 ...

  9. Java中的位运算符、移位运算

    一.位运算 Java中有4个位运算,它们的运算规则如下: (1)按位与 (&)  :两位全为1,结果为1,否则为0: (2)按位或  (|)   :两位有一个为1,结果为1,否则为0: (3) ...

随机推荐

  1. Zookeeper-Zookeeper可以干什么

    在Zookeeper的官网上有这么一句话:ZooKeeper is a centralized service for maintaining configuration information, n ...

  2. PDFsharp Samples

    http://www.pdfsharp.net/wiki/PDFsharpSamples.ashx http://www.pdfsharp.net/?AspxAutoDetectCookieSuppo ...

  3. POJ3061 尺取法

    题目大意:从给定序列里找出区间和大于等于S的最小区间的长度. 前阵子在zzuli OJ上见过类似的题,还好当时补题了.尺取法O(n) 的复杂度过掉的.尺取法:从头遍历,如果不满足条件,则将尺子尾 部增 ...

  4. Android 手机自动化测试工具有哪几种?

    1.Monkey是Android SDK自带的测试工具,在测试过程中会向系统发送伪随机的用户事件流,如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试,也有日志输出.实际上该工 ...

  5. nexus 搭建maven本地仓库

    使用Nexus搭建Maven本地仓库   阅读目录 序 Nexus 序 在工作中可能存在有些开发机器不能上网,大量的机器获取jar包会导致公司网络很慢,还有时候公司会自己发布自己的项目版本,其他的项目 ...

  6. 用js将从后台得到的时间戳(毫秒数)转换为想要的日期格式

    得到后台从数据库中拿到的数据我们希望格式是 2016年10月25日 17时37分30秒 或者 2016/10/25 17:37:30 然而我们前台得到的却是一段数字(时间戳,毫秒数) 14773860 ...

  7. NC nc5.x笔记(编辑中)

    一.设置卡片界面下 金额字段负数为红色! /** * 设置卡片界面下 金额字段负数为红色! */ private void repaintBodyMoneyColor(){ if(!isListPan ...

  8. 开始研究tigase和android客户端的实现

    2015.7.5. 昨晚总算把tigaase7.0的开发环境搭起来了.稍微看了下代码结构. 主要是auth,db,compnent,cluster,server,xmpp,这几块,准备先发点时间看看开 ...

  9. HotApp

    1.注册接口地址:https://wxapi.hotapp.cn/api/searchkey 2.编缉小程序,获取App Key 3.下载SDK 4.下载的hotapp.js按在utils目录下,在a ...

  10. linux修改主机名称

    http://blog.csdn.net/qq_20480611/article/details/51017033 ========================================== ...