美文网首页
几个基础的 位运算符

几个基础的 位运算符

作者: 我迎风踏雪而来 | 来源:发表于2018-11-16 11:23 被阅读0次

位运算

程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算就是直接对整数在内存中的二进制位进行操作

<font size=3>运算符大致有:</font>

按位与 and 运算符 &

相同位的两个数字都为1,则为1;若有一个不为1,则为0。

00101
11100
(&;或者and)
00100

按位或 or 运算符 |

相同位只要一个为1即为1。

00101
11100
(|或者or)
11101

按位异或 xor 异或运算符 ^

异或的符号是^。
按位异或运算, 对等长二进制模式按位或二进制数的每一位执行逻辑按位异或操作.
操作的结果是如果某位不同则该位为1, 否则该位为0.
异或运算的逆运算是它本身,也就是说两次异或同一个数最后结果不变
即(a xor b) xor b = a。xor运算可以用于简单的加密。

00101
11100
(^或者xor)
11001

按位取反 not 反运算符 ~

not运算的定义是把内存中的0和1全部取反。
使用not运算时要格外小心,你需要注意整数类型有没有符号

00101
(~反运算 not)
11010

按位左移 shl 运算符 <<

a shl b就表示把a转为二进制后左移b位(在后面添b个0)
例如100的二进制为1100100,而110010000转成十进制是400
1100100 << 2 = 110010000
可以看出,a shl b的值实际上就是a乘以2的b次方

按位右移 shr 运算符 >>

将操作数的所有位向又移动指定的位数。
shl 相似,a shr b表示二进制右移b位(去掉末b位)
相当于a除以2的b次方(取整)


更多文章可前往做棵大树查看

相关文章

  • 几个基础的 位运算符

    位运算 程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算就是直接对整数在内存中的二进制位进行操作 运算...

  • java基础知识

    title: java基础知识tags: [java基础知识] 位运算符 java种的运算符有 “&”,“|”,“...

  • 1.位运算符-Bit

    前言:位运算符的使用方式有两种。1)基础使用方式;2)c++新增bitset类1.基础使用1)位运算符 备注:1....

  • java基础题总结(小红星)

    首先:java基础的基础1.位运算符 (博客中 位运算的应用)2.集合的特点(ArrayList,linkedLi...

  • javaSe-02-运算符

    基础运算符 基础的比如 + - * / %下边有几个特殊的: 5/2 =2 5/2.0 = 2.5 5/0 = 抛...

  • 基础位运算符

    位运算符是用来对二进制位进行操作的 c语言中有6种位运算符: & 按位与| 按位或^ 按位异或~ 取反<< 左移右...

  • 位运算

    位运算符号 位运算符号有如下几个 &,|,^,~。接下来一个一个说下我的理解吧。 &运算符 &,与,逻辑运算的话,...

  • 位运算小结

    位操作基础 Java还有一个无符号右移运算符>>>,强行右移,左侧补零。以及还有相应的复合运算符。 位操作只能用于...

  • 编程语⾔⾯试题之新版javase基础语法篇之运算符

    简介:⾯试中 短路运算符 和 位运算考点:计算机基础运算知识 难度【** *】 你知道 运算符 &和&&、|和||...

  • 强大的位运算符

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

网友评论

      本文标题:几个基础的 位运算符

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