C语言高手进

C语言高手进为什么补码8000H的原码也是8000H,能详细解释一下吗
2024-12-27 03:49:04
推荐回答(1个)
回答1:

补码的算法是取反加1,
8000H,变成二进制是,1000 0000 0000 0000,
取反之后是,0111 1111 1111 1111,加1之后进位,变成 1000 0000 0000 0000

其实,正数的补码与其原码相同;负数的补码是在其反码的末位加1.