位运算

作者: HikariCP | 来源:发表于2018-05-09 20:15 被阅读4次
image

位除

// 右移
test(1, 8 >> 2); 

1000 向右移两位=10 相当于 8除2 再除2

位乘

// 左移
test(2, 2 << 2); 
// 左移
test(2, 2 << 3); 

-10 向左移两位 1000 相当于 2乘2 再乘2
10 向左移两位 1000 相当于 2乘2 再乘2 再乘2

位与

// 位与
test(3, 5 & 7); 

0111 异或 0101 结果 1 有一位能对应上就为1 一位都对不上就为0

>>> 无符号右移

无符号右移,忽略符号位,空位都以0补齐
value >>> num -- num 指定要移位值value 移动的位数。
无符号右移的规则只记住一点:忽略了符号位扩展,0补最高位 无符号右移运算符>>> 只是对32位和64位的值有意义

位或

// 位或
test(4, 8 | 7); // 0111 异或 1000    结果 1111

第一个操作数的的第n位于第二个操作数的第n位 只要有一个是1,那么结果的第n为也为1,否则为0

位异或

// 位异或
test(5, 8 ^ 7); // 0111 异或 1000    结果 1111

第一个操作数的的第n位于第二个操作数的第n位 相反,那么结果的第n为也为1,否则为0

位非

// 位非
test(6, ~2); 
test(7, ~7); // 0111 取非 = -8

0010 取非 +1 变负 1011 第一个1是符号位

相关文章

  • 3、小众运算符の大课堂(一)

    较为简单の位运算符: & 位与运算| 位或运算^ 位异或运算~ 位取反运算 举例: 要做位运算,首先要把数据转...

  • 位运算及其应用

    内容概要: 位运算基本操作 基于位运算的状态压缩 位运算经典应用 位运算解N皇后问题 位运算 符号描述规则&与1&...

  • 位运算及用位运算实现权限控制

    请自行补习位运算相关知识 位运算 位运算示例 权限控制

  • 开发基础随笔之位运算符(Bitwise Operators)

    位运算符,属于算术运算符 按位逻辑运算符: 位移运算符: 位运算符的运算数只能是整数 位移运算符:按位左移 a<<...

  • 强大的位运算符

    位取反运算符 位取反运算符(~)是对所有位的数字进行取反操作位取反运算符.png 位与运算符 位与运算符(&)可以...

  • 位运算

    位运算 1. &:按位与 规律:一假则假任何位上的数和1相&得到的结果还是那个数 2. |:按位或 规律:一真则真...

  • 位运算

    https://leetcode.com/problems/gray-code/description/这个位运算...

  • 位运算

    位运算符比一般的算术运算符速度要快,而且可以实现一些算术运算符不能实现的功能。如果要开发高效率程序,位运算符是必不...

  • 位运算

    1.不用加减乘除做加法 解法:分为三步①各位相加不进位,即先按位异或;②做进位,按位与并左移位;③结果相加,直至没...

  • 位运算

    位运算不仅可以简化某些复杂的操作,而且具有更快的计算速度。典型的应用就是除法,交换两个数值,以及在一个数组中寻找只...

网友评论

    本文标题:位运算

    本文链接:https://www.haomeiwen.com/subject/dnborftx.html