zoukankan      html  css  js  c++  java
  • 【笔记】关于位运算(2)

    今天 Kersen 学姐给我们出题考试,考了一大堆位运算题,所以更新一下笔记(主要是更新一些 巧技小)~~

    之前的笔记 -->【学习笔记】关于位运算

    ps:因为改了改下面的表格的宽度(之前炸了),所以现在表格不炸了,但日历炸了……

    位运算 巧技小 (二进制)

    作用 方法
    去掉最后一位 (x >> 1)
    在最后加一个 0 (x << 1)
    在最后加一个 1 (x << 1~~ mid ~~ 1)
    把最后一位变成 1 (x ~~mid ~~1)
    把最后一位变成 0 ((x~~ mid ~~1) ~~ ext{^} ~~1)
    把最后一位取反 (x ~~ ext{^}~~ 1)
    把右数第 k 位变成 1 (x~~mid~~(1 << (k - 1)))
    把右数第 k 位变成 0 (x~~ & ext{~}~~(1 << (k - 1)))
    把右数第 k 位取反 (x~~ ext{^}~~(1 << (k - 1)))
    取末 k 位 (x~~&~~(1 << k - 1))
    取右数第 k 位 (x >> (k - 1)~~&~~ 1)
    把末 k 位变成 1 (x ~~mid~~ (1 << k - 1))
    把末 k 位取反 (x ~~ ext{^}~~(1 << k - 1))
    把右数连续的 0 变成 1 (x~~mid~~(x - 1))
    把右数连续的 1 变成 0 (x~~&~~(x + 1))
    把右数第一个 0 变成 1 (x~~mid~~(x + 1))
    把右数第一个 1 变成 0 (x~~&~~(x - 1))
    取右边连续的 1 ((x~~ ext{^}~~(x + 1)) >> 1)
    去掉右起第一个 1 的左边(lowbit) (x~~&~~(x~~ ext{^}~~(x - 1))) ( ext{or}) (x~~&~~(-x))
    判断奇偶 (x~~&~~1)

    位运算的优先级:

    (~~ ext{~}~~)) > ((<<,>>)) > ((&))> (( ext{^}))> ( | )

  • 相关阅读:
    索引在什么情况下遵循最左前缀的规则?
    MySQL索引种类
    简述触发器、函数、视图、存储过程?
    6.Class 与 Style 绑定
    2.Javascript 函数(主要)
    Java的string类
    PHP+mysql注入的基本过程
    Android自动化测试Emmagee
    EclEmma的介绍、安装与使用
    软件测试方法
  • 原文地址:https://www.cnblogs.com/EiffelA-blog/p/13921489.html
Copyright © 2011-2022 走看看