欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

java 负数的二进制表示

发布时间:2023/12/29 编程问答 50 豆豆
生活随笔 收集整理的这篇文章主要介绍了 java 负数的二进制表示 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

JAVA 基础系列

计算机对有符号数(包括浮点数)的表示有三种方法:原码、反码和补码,三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”
反码:原码按位取反
补码:反码+1
移码:移码(又叫增码)是符号位取反的补码

对于负数而言,是以补码的形式存储在内存中的。以-7(int)为例
第一步:将-7的绝对值转化为二进制 0000 0111
第二步:将上面的二进制以反码表示 1111 1000
第三步:转化为补码:11111111111111111111111111111001

这个二进制的值可以通过Integer.toBinaryString()来获取。int 在内存中占用4个字节

代码:

public static void main(String[] args) {int d = -7; // System.out.print(""+Integer.toBinaryString(d)+" \n");}

输出结果:

11111111111111111111111111111001

总结

以上是生活随笔为你收集整理的java 负数的二进制表示的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。