与、或、异或的运算

 
  • 与运算 (“  & ”)

    参与运算的两个数据,按照二进制位进行“与运算”。
    运算规则:0&0=0;   0&1=0;   1&0=0;    1&1=1;
    即:两位同时为1,则值为1。否则为0
    例如:6 & 7 = 110 & 111 = 110 = 6
    8 & 3 = 1000 & 11 = 0 = 0

  • 或运算 (“ | ”) 

    参与运算的两个数据,按照二进制位进行“或运算”。
    运算规则:0&0=0;   0&1=1;   1&0=1;    1&1=1;
    即:参与运算的两个数据只要有一个值为1 那么值为1
    例如:12 | 5 = 1100 | 101 = 1101 = 13
    4 | 5 = 100 | 101 = 101 = 5

  • 异或运算 (“ ^ ”)

   参与 运算的两个数据,按照二进制位进行“异或运算”。
   运算规则: 0&0=0;   0&1=1;   1&0=1;    1&1=0;
   即:参加运算的两个对象,如果两个相应位为“异”(值不同),则该位结果为1,否则为0。
   例如:9^5可写成算式如下: 00001001^00000101=00001100 (十进制为12)可见9^5=12

  • 取反运算(“^”)

参与运算的单个数据,按照二进制位进行“取反运算”

运算规则:0^=1;1^=0

随机推荐

  1. Date和Timestamp区别

    主要是精度问题,date没有ms,而timestamp是有ms的,所以date的精度要低于timestamp. 而且二者可以互相转换. 除此之外,没有什么不同,

  2. RabbitMQ 设置队列的过期时间

    设置队列的过期时间非常简单,在声明队列时,设置x-expires参数即可.当队列的生存周期超时后,RabbitMQ server会自动将该队列删除. 代码如下: channel.QueueDeclar ...

  3. Angular4-配置

    基于 Angular Quickstart git clone https://github.com/angular/quickstart ng4-quickstart npm i npm start ...

  4. ON 子句和 WHERE 子句的不同

    原文: https://www.cnblogs.com/zjfjava/p/6041445.html 即使你认为自己已对 MySQL 的 LEFT JOIN 理解深刻,但我敢打赌,这篇文章肯定能让你学 ...

  5. HashMap和Hashtable有什么区别?

    HashMap和Hashtable都是实现Map接口的,但是: 1.HashMap允许键和值都是null的,而Hashtable不允许键和值为null 2.Hashtable是同步的,而HashMap ...

  6. vivado对task和function的可综合支持

    手册UG901,对vivado可综合的语句支持进行了描述,HDL包括:verilog-2001,system-verilog,VHDL: verilog-2001扩展了对task和function的支 ...

  7. StringUtils方法介绍

    引用StringUtils方法全集介绍 C标准中空白字符有:空格(‘ ’).换页(‘\f’).换行(‘\n’).回车(‘\r’).水平制表符(‘\t’).垂直制表符(‘\v’)六个.

  8. Spring学习六(事物管理)

    参考链接 http://www.mamicode.com/info-detail-1248286.html http://www.cnblogs.com/wangdaqian/archive/2017 ...

  9. get 和post 请求的写法

    get请求 import requests base_url = 'http://httpbin.org' # 定义请求所需的参数,参数之间以英文逗号隔开 param_data = {'} # 发送G ...

  10. centos安装htop

    在 Linux 系统中,top 命令用来显示系统中正在运行的进程的实时状态,它显示了一些非常有用的信息,比如 CPU 利用情况.内存消耗情况,以及每个进程情况等.但是,你知道吗?还有另外一个命令行工具 ...