负0的原码为什么负0的补码,0的补码是什么

发布时间:2020-07-09 15:38:18

负0的原码为什么负0的补码,0的补码是什么

网友回答

补码的存在是为了变减法为加法,简化了计算过程,即硬件的设计难度.首先要知道两个零是怎么来的,0包括+0和-0,在原码和反码中根据其计算公式,有两种形式,而对于补码来说+0,真值为0,000000和-0,其真值为1,0000000补码:一个数如果为正,则它的原码、反码、补码相同;一个数如果为负,则符号位为1,其余各位是对原码取反,然后整个数加1.为了简单起见,我们用1个字节来表示一个整数:问题:0的补码表示:
  +0的补码:00000000
  -0的补码:第一步:11111111 第二步+1= 1 00000000 第三部:进位1被丢弃。

网友回答

0的补码是00000000。
  假设机器的位长为0,正数x的最高位为0,其余位为数x的值
  (8位长为例)
  [+0]补= 0 000 000
  负数x的补码表示为2^n-|x|
  [-0]补 = 2^n = 10000 0000 = 0000 0000
  综合[0]补=0000 0000
  计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。
  在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理。此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。
  求给定数值的补码分以下两种情况:
  正数
  正整数的补码是其二进制表示,与原码相同
  负数
  求负整数的补码,将其对应正数二进制表示所有位取反(包括符号位,0变1,1变0)后加1 。
  同一个数字在不同的补码表示形式中是不同的。比如-15的补码,在8位二进制中是11110001,然而在16位二进制补码表示中,就是1111111111110001。以下都使用8位2进制来表示。
以上问题属网友观点,不代表本站立场,仅供参考!