原码补码反码

原码、反码、补码是计算机中对数字的二进制表示方法。

计算机储存符号的时候,0表示+;1表示-;

1、原码

将最高位作为符号位,其他7位是数值位即一个十进制数字的二进制表示方法。

例如:     +7的原码为: 00000111
                -7的原码为: 10000111

2、反码

一个数如果为正,则它的反码与原码相同;                            +7的反码为:00000111

一个数如果为负,则符号位为1,其余各位是对原码取反。     -7的反码为:11111000

3、补码

一个数如果为正,则它的原码、反码、补码相同;                                            +7的补码:00000111

一个数如果为负,则符号位为1,其余各位是对原码取反,然后整个数加1。    -7的补码:11111001

0的反码、补码都为0

总结:
1、正数的原码、补码、反码均为其本身;
2、负数:
              反码 = 原码(除符号位外)每位取反
              补码 = 反码 + 1
              反码 = 补码 - 1

1
2
3
4
5
6
7
8
9
10
public class Test {
     
    public static void main(String args[]) {
        int num1=7;
        int num2=2;
        System.out.println(num1&num2);
        System.out.println(num1|num2);
        System.out.println(num1^num2);
    }
}

  运行结果:

 

Java中数据是按照补码的形式储存的。

 

posted on   小橘猫xjm  阅读(931)  评论(0编辑  收藏  举报

努力加载评论中...

导航

点击右上角即可分享
微信分享提示