负数用二进制怎么表示呀?

看到网上说了一大堆,那么复杂看不懂,什么原码、反码不懂,就给举个例子,-7二进制是多少?-13二进制是多少?怎么算得的?算法与正数的7和13有什么联系吗?

第1个回答  2021-03-29

第2个回答  2019-12-21
用补码来表示二进制的负数。具体实例如下:1、首先,来个-5,把5转化为二进制字节形式。得到101,然后补零。2、这个时候,原码就出来了。然后,取反(0的变成1,1的变成0。)(一个整数按照绝对值大小转换成的二进制数,是为原码。原码就上面的:00000101。)。3、得到了反码,反码是和原码反着来的。然后,加一。反码加一叫补码。4、补码就是负数在计算机中的二进制表示方法。那,11111011表示8位的-5,如果要表示16位的-5 ,在左边添上8个1即可。5、那,知道一个负数,求二进制数的方法已经知道了,如果知道一个二进制数,怎么求其十进制数呢(对负数)随便来个负数的二进制数。6、先减一,反着上面的方法来。上面最后是加一,那现在就减一。7、取反。上面是取反了,这里也取反。那,接下来就是计算了。计算结果是13,那么这个二进制数就是:-13。8、那,接下来就是计算了。计算结果是13,那么这个二进制数就是:-13。9、那,用计算器来验证一下。其实负数的:十进制变二进制:原码--反码--加一(补码)。二进制变十进制:减一--反码--原码。
第3个回答  推荐于2018-12-10
在二进制码中,为了区分正负数,采用最高位是符号位的方法来区分,正数的符号位为0、负数的符号位为1。剩下的就是这个数的绝对值部分,可以采用原码、反码、补码3种形式来表示绝对值部分。
原码最简单,也最好理解。原码就是绝对值的二进制数形式:例如+7的8位二进制原码是00000111,-7的8位二进制原码是10000111。
但对于二进制运算而言,原码的运算不够方便,当两个数相加时,先要判断这两个数的符号是否相同,符号不同的话,还要判断哪一个数的绝对值更大。所以在计算机中,通常都是采用补码形式。
正整数的补码与原码形式相同,例如+7的8位二进制补码是00000111;而负整数的补码则可以通过下列方式得到:将这个负整数的绝对值求反加1,连同符号位1一起表示就可以了。例如-7的8位二进制补码:将-7的绝对值7求反加1得1111001,连同符号位1一起就是11111001。
你也可以练习一下+13和-13的8位二进制补码:+13d=00001101,-13d=11110011。本回答被提问者和网友采纳
相似回答