
在8位存储情况下,-20的源码确实是00010100。反码为11101011,而补码则是11101100。
若使用32位存储,补码将变为11111111 11111111 11111111 11101100。这里需要注意,对于负数,补码是通过将源码的每一位取反再加上1得到的。
具体来说,-20的源码是00010100,取反后得到11101011,再加上1后得到11101100。当扩展到32位时,高位部分用1填充,因此得到上述的32位补码。
这种表示方法使得0的表示是唯一的,即0的源码、反码和补码都是00000000 00000000 00000000 00000000。
在计算机系统中,使用补码表示负数可以简化加减法运算,因为减法操作可以转化为加法操作,从而减少硬件实现的复杂度。
需要注意的是,补码的这种表示方式只适用于固定位数的存储。不同的位数,补码的表示也会有所不同。
通过这种方式,计算机能够高效地进行数值运算,而不需要区分正负数的特殊处理。
总之,对于-20来说,在8位存储情况下,源码是00010100,反码是11101011,补码是11101100;而在32位存储情况下,补码则为11111111 11111111 11111111 11101100。