zoukankan      html  css  js  c++  java
  • C++ 浅析移位运算

    按位左移(<<):

      按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零

    按位右移(>>):

      按二进制形式把所有的数字向右移动对应位移位数,低位移出(舍弃),高位的空位补符号位,即正数补零,负数补1

    简单举个例子【右移>>】:

    int number = 500;

    number = number >> 1;

    十进制      二进制

    (500)10  <===>(1 1 1 1 1 0 1 0 0)2

    右移两位:

    二进制       十进制

    (1 1 1 1 1 0 1)2 <====>(125)10

    低位舍弃2位

    同理【左移动<<】

    十进制      二进制

    (500)10  <===>(1 1 1 1 1 0 1 0 0)2

    左边移两位:

    二进制       十进制

    (1 1 1 1 1 0 1 0 0 0 0)2 <====>(2000)10

    低位舍弃2位

    注意需要考虑溢出的问题。此处不做深究。

  • 相关阅读:
    redis
    sqlalchemy ORM
    元类的理解
    python连接mysql
    ffmpeg去水印
    ffmpeg给视频加文字水印
    yt-seo-checklist
    ffmpeg下载直播流
    ffmpeg拼接mp4视频
    ffmpeg截取视频
  • 原文地址:https://www.cnblogs.com/liuruoqian/p/11631947.html
Copyright © 2011-2022 走看看