zoukankan      html  css  js  c++  java
  • Bit Masking

    Masking lets you modify a specific bit (or bits) using a bit pattern (called the mask) and a logical bitwise operator (AND, OR, or XOR). By changing the bits in the mask you will change which bits are modified by the operator. And by changing the operator, you will change how those bits are modified.

    Take for example a = 10111001 (or 185 in decimal).

    Using masking, you can set the last digit of a to 0 with the AND (&) operator and a mask of 11111110 (254 in decimal):

    a    10111001

    mask 11111110

    b    10111000

    Implemented, this would look something like:

    b = a & mask

    You can set the first 4 digits of a to 1 with the OR (|) operator and a mask of 11110000 (240 in decimal):

    a    10111001

    mask 11110000

    b    11111001

    This would look like:

    b = a | mask

    You can also toggle (meaning convert all 0's to 1's and vice versa) the entirety of a with the XOR (^) operator and a mask of 11111111 (255 in decimal):

    a    10111001

    mask 11111111

    b    01000110

    This would look like:

    b = a ^ mask

    Similarly, implement a mask using the bitwise Not operator (~)

  • 相关阅读:
    安装图形化界面
    cemtos安装python
    traceback说明
    python常用魔法函数
    python上传文件接口
    文件上传接口
    MongoDB安装与使用
    解决macOS系统向有跳板机的服务器传文件
    mac终端命令sftp
    linux下mysql服务安装
  • 原文地址:https://www.cnblogs.com/JasperZhao/p/12916008.html
Copyright © 2011-2022 走看看