C语言中,原码转换成反码的时候,符号位取不取反?(负数和正数一样吗?)

2025-02-25 11:35:27
推荐回答(4个)
回答1:

正的原函数,负的和补的是一样的。一个负数的补码是它的倒数加上1,当负数变成倒数和补码时符号位是一样的,所以它是1。

1.首先,我们需要知道转换规则:原码转换为逆码:符号位不变,数字位逐位倒转。

2.那么逆码到原码是一样的,但规则不同:符号位不变,数字位“位倒转”。

3.然后是源代码,把原代码变成补充代码的规则:符号位不变,值位按相反方向,最后一位加1。

4. 最后,将补码转换为原码:符号位不变,值位按位倒转,最后一位加1,即补码的补码等于原码。

5. 求补码(变量补码)的转换规则与前一个有区别:符号位和值位倒转,最后一位加1。

回答2:

正数原码,反码,补码三个都是一样的。负数的补码是它的反码加1,负数变反码和补码的时候符号位是不变的,保持为1

回答3:

不是有补码吗?开头的0和1不是决定了正负吗

回答4:

额...算嘛~~! 当然要算喽! 不然怎么出补码撒!