美文网首页程序员
Java基础-位运算

Java基础-位运算

作者: 灬佐手边 | 来源:发表于2020-07-04 10:31 被阅读0次

1-1 Java基础-位运算
什么是位运算?
一个字节=8位二进制1k=1024字节1k=1024*8位二进制

位运算其实就是移位运算,将内存里面的二进制进行移位比如二进制=101向右移1位 010|1移位之后的1其实已经不被计算在内了, 变成内存里面的垃圾在java中,一个int数值类型有32位二进制1位是符号位,从2的0次方开始算起,数值的范围为 [-2^{32},2^{31}-1]

Java的位运算
带符号位的位运算
<<左移就是向左移一位,比如101左移1位1011010 向后补0>>右移就是向右移一位1010101记住这是带符号位的移位

无符号位运算

和 <<< 则是不带符号位的位运算,比如1013(10进制的3)=101(二进制的101)在java中,分配了32位的内存给int,所以在java中的内存应该是这样的:符号位0标识正数,1标识负数

image.png 再拿个负数来举例子 image.png 最后负数变成了 便于观察我们可以将-3无符号左移31位 image.png
就变成了1(10进制) 下面用简单的java程序来证明一下: image.png

运行上面的程序可以观察到输出1,证明了上面的理论

作者java编程qq学习群:1080621881

相关文章

网友评论

    本文标题:Java基础-位运算

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