美文网首页
负数的二进制表示方法

负数的二进制表示方法

作者: 溪水散人 | 来源:发表于2020-07-28 09:10 被阅读0次

负数表示不是简单地将最高位变为1,比如:

1)byte a=-1,如果只是将最高位变为1,二进制应该是10000001,但实际上,它应该是11111111。

2)byte a=-127,如果只是将最高位变为1,二进制应该是11111111,但实际上,它却应该是10000001。

和我们的直觉正好相反,这是什么表示法?这种表示法称为补码表示法,而符合我们直觉的表示称为原码表示法,补码表示就是在原码表示的基础上取反然后加1。取反就是将0变为1,1变为0。负数的二进制表示就是对应的正数的补码表示,比如:

1)-1:1的原码表示是00000001,取反是11111110,然后再加1,就是11111111。

2)-2:2的原码表示是00000010,取反是11111101,然后再加1,就是11111110。

3)-127:127的原码表示是01111111,取反是10000000,然后再加1,就是10000001。

总结下来就是:负数的表示方式是,先写出其原码,按位取反,加1。

相关文章

  • 知识点收集

    负数的二进制表示方法二、八、十、十六进制转换按位取反

  • 负数的二进制表示方法

    假设有一个 int 类型的数,值为5,那么,我们知道它在计算机中表示为:00000000 00000000 000...

  • 负数的二进制表示方法

    负数的二进制表示方法 假设有一个 int 类型的数,值为3,那么,我们知道它在计算机中表示为: 00000000 ...

  • 负数的二进制表示方法

    负数表示不是简单地将最高位变为1,比如: 1)byte a=-1,如果只是将最高位变为1,二进制应该是100000...

  • 二进制中1的个数

    题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。2中方法:

  • 剑指offer编程题—二进制中1的个数

    题目描述 输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。 解题思路 思路一:暴力方法 方法...

  • java位移操作

    十进制、二进制 十进制数在计算机中的表示方法,对于正数和负数是不一样的。负数:绝对值对应的二进制,取反码,将反码加...

  • Java 二进制

    原码、反码、补码 二进制的最高位是符号位, 0表示正数, 1表示负数; 正数的原码, 反码, 补码都一样; 负数的...

  • java数据结构和算法(10)二进制中1的个数

    输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。完成如下代码: 思路:方法1:使用Integer....

  • Day7——进制/原码反码补码/位运算

    一、进制 二、原码反码补码 原码:(符号位+真值)符号位:最高位用0表示正数,1表示负数真值:去掉正负数字的二进制...

网友评论

      本文标题:负数的二进制表示方法

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