zoukankan      html  css  js  c++  java
  • &运算<<移位运算

    <<为左移运算

    例子: 3<<2

    解释:3的二进制11左移两位1100结果为12;

    &且(与)运算

    参加运算的两个数据,按二进位进行“与”运算。如果两个相应的二进位都为1,则该位的结果值为1,否则为0。即

        0&0=0;0&1=0;1&0=0;1&1=1;

    例如: 3&5 并不等于8,应该是按位与。

                   3 = 00000011

              (&)  5 = 00000101

                      00000001

    因此,3&5的值得1。如果参加&是负数运算的是负数(如-3 & -5),则以补码形式表示为二进制数,然后按位进行“与”运算。

    按位与有一些特殊的用途:

    (1)清零。 如果想将一个单元清零,即使其全部二进位为0,只要找一个二进制数,其中各个位符合以下条件:原来的数中为1的位,新数中相应位为0。然后使二者进行&运算,即可达到清零目的。

    如:原有数为00101011,另找一个数,设它为10010100,它符合以上条件,即在原数为1的位置上,它的位值均为0。将两个数进行&运算:

    00101011

     (&)    10010100

    00000000                                                  

    其道理是显然的。

    当然也可以不用10010100这个数而用其他数(如01000100)也可以,只要符合上述条件即可。

    (2)取一个数中某些指定位。如有一个整数a(2个字节),想要其中的低字节。

    只需将a与(737)8按位与即可。

    引用于:http://blog.sina.com.cn/s/blog_45e9348c010006uj.html

  • 相关阅读:
    Photoshop教程,视频MP4格式转换为GIF格式
    pyqgis环境配置
    R 输出函数 格式化输出 打印函数
    linux ubuntu 更改终端的默认设置,终端大小,字体
    wps 显示所有的字符,将参考文献排序,插入目录
    在 word 中 怎么让表格旋转方向
    linux argc argv
    linux 命令行的快捷键 vim
    linux 操作系统,以及一般的操作系统 所看书籍
    win 10 快速启动 某些程序
  • 原文地址:https://www.cnblogs.com/bindot/p/fuhaoyunsuan.html
Copyright © 2011-2022 走看看