栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

原码 反码及补码

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

原码 反码及补码

出自韩顺平老师的B站的Java教学视频P100

  • 二进制的最高位是符号位:0表示正数,1表示负数

  • 正数的原码,反码,补码都一样(三码合一)

  • 负数的反码 = 它的原码符号位不变,其他位取反

  • 负数的补码 = 它的反码+1, 负数的反码 = 负数的补码 - 1

  • 0的反码, 补码都是0

  • java没有无符号数,换言之,java中的数都是有符号的

  • 在计算机运算的时候,都是以补码的方式来运算的

  • 当我们看运算的结果时,看它的原码(重点)。

  • 为什么要使用原码,反码和补码了呢 ?
    该问题的答案

  • 讲到这里,就一定要提醒一下位运算符
    按位与&:
    按位或|:
    按位异或^:
    按位取反~:
    我们在这里举列出 ~2的计算过程
    2 = [0000 0010] //原码
    [0000 0010] //反码
    [0000 0010] //补码
    [1111 1101] //运算后的补码
    [1111 1100] //运算后的反码
    [1000 0011] //运算后的原码
    因此最后输出结果是-3,我们可以通过一下代码验证一下结果

public class BitOperator{
	public static void main(String[] args){
		System.out.println(~2);  //-3
	}
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/590903.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号