
面试考官邢老师为您分享以下优质知识
负数的二进制表示通常采用 补码形式。对于-32,其二进制补码表示如下:
首先,将正数32转换为二进制:
$$32_{10} = 00100000_2$$
这是8位二进制表示(不足的位数用0补全)。
求反(取反码)
对二进制数进行按位取反:
$$00100000 rightarrow 11011111$$
加1得到补码
将取反后的结果加1:
$$11011111 + 1 = 11100000$$
因此,-32的8位二进制补码表示为 11100000。
说明:
计算机中负数均以补码形式存储,最高位为符号位(0表示正数,1表示负数);
若需扩展为16位、32位等,需在前面补零。例如,-32的16位表示为 FFFF0000 00000000,32位表示为 10000000 00000000 00000000 00100000。