公司做网站比较好的青海旅游的网站建设
news/
2025/9/30 16:52:32/
文章来源:
公司做网站比较好的,青海旅游的网站建设,郑州手机网站建设公司,cnzz网站建设java中有7个位运算#xff08;、|、^、~、、和#xff09; 第一组
分别是按位与、按位或|、按位异或^#xff0c;按位取反~#xff0c;它们的运算规则是#xff1a;
按位与 : 两位全为1#xff0c;结果为1#xff0c;否则… java中有7个位运算、|、^、~、、和 第一组
分别是按位与、按位或|、按位异或^按位取反~它们的运算规则是
按位与 : 两位全为1结果为1否则为0 按位或| : 两位有一个为1结果为1否则为0 按位异或^ 两位一个为0一个为1结果为1否则为0 按位取反~ 0-1,1-0 比如
23 推导过程: 1.因为2和3是int 类型, 所以一共4个字节, 一个字节8位, 运算时一共32位二进制 2.因为在计算机运算的时候都是以补码的方式来运算的, 所以要得到2的补码 3.要的到2的补码先得到2的源码, 因为正数的原码反码补码都一样, 得到源码便得到补码 4.同样得到3的补码和源码, 进行按位与运算, 5.按位与都为一的才为一, 计算得到运算后的补码 6.又因为当我们看运算结果的时候要看他的原码, 而整数补码源码都一样, 所以也得到源码 7.最后源码换算成十进制得到最终结果2 ~-2?
推导过程: 1.因为-2是int 类型, 所以一共4个字节, 一个字节8位, 运算时一共32位二进制 2.因为在计算机运算的时候, 都是以补码的方式来运算的, 所以要得到-2的补码 3.要的到-2的补码先得到-2的反码, 因为负数的补码它的反码1, 得到反码便需要到源码 4.他的源码就是符号位为1(负数), 因为负数的反码它的原码符号位不变, 其它位取反,得到反码 5.最后反码1得到补码, 在对补码进行按位取反运算, 得到运算后的补码 6.得到的补码变为了正数, 我已源码也是这个补码 7.最后源码换算成十进制得到最终结果1 ~2?
推导过程: 1.因为2是int 类型, 所以一共4个字节, 一个字节8位, 运算时一共32位二进制 2.因为在计算机运算的时候, 都是以补码的方式来运算的, 所以要得到2的补码 3.2的补码源码相同, 所以直接得到它的补码 4.在对补码进行按位取反运算, 得到运算后的补码 5.此时运算后的补码是负数, 要得到它的源码需要先得到它的反码, 负数的反码负数的补码-1 6.因为负数的原码等于它的符号位不变, 其他位取反, 得到它的原码 7.最后源码换算成十进制得到最终结果-3 第二组
还有3个位运算符、和
运算规则
1.算术右移 低位溢出符号位不变并用符号位补溢出的高位
2.算术左移符号位不变低位补0
3.逻辑右移也叫无符号右移,运算规则是低位溢出高位补0
4.特别说明没有符号
举例:
这里为了方便观看简洁一点假设是只有一个字节(实际int4个字节)
1.算术右移 把补码黄色01去掉 并用符号位0补溢出的高位得到00(12代表右移两位)
可以用计算公式进行计算 1/2/2 原本等于0.25但是是整数,舍去小数位得到0
如果是152 公式则为 15/2/2 舍去小数位得到3
2.算术右移 符号位不变 低位补00 最末尾多了两个00
可以用计算公式进行计算 1*2*2 得到4
如果是43 公式则为 4*2*2*2 得到32 位运算规则
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/923078.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!