有关补码
补码负数的规则:
负数的符号位为1,数值位取真值的相反码加一:
这里我有个疑问。
-0000000的补码不就成了
100,000,000了吗不就变成九位了吗?
符号位为一:
1
数值位为1111111(取相反码)如果再加一数值位就成八位了。即10,000,000。这里再加上符号位就成了100,000,000。不知到底是怎么回事?
问题点数:20、回复次数:4Top
1 楼tankai(阿凯)回复于 2002-04-13 19:04:57 得分 5
你说的情况是最高位有溢出,这种情况下,计算机自动把所得到的“1”抛弃掉。
所以100000000的补码就是100000000。Top
2 楼Yardwand(前途道标)回复于 2002-04-13 19:29:09 得分 5
对于原码,补码都有不能表零的问题,而反码就可以。Top
3 楼zaozi(枣子)回复于 2002-04-13 19:37:00 得分 5
你搞错了,所谓补码是:
当第一位是0时,原码就是补码,当第一位是1时,符号位不变,其他位取反加一!Top
4 楼dxhdxh2k(dxhdxh)回复于 2002-04-13 20:01:38 得分 5
upTop




