
补码+0和-0相同?
我知道+0和-0补码相同,可是比如在八位机上,+0(00000000)求补码是10000000,而-0(10000000)求补码是(00000000)啊,求补码的做法是符...
我知道+0和-0补码相同,可是比如在八位机上,+0(00000000)求补码是10000000,而-0(10000000)求补码是(00000000)啊,求补码的做法是符号位不变,其余为取反,然后再加1,没错吧,那我的错误出在哪里?
展开
3个回答
展开全部
0 在补码中,只有一个编码 0000 0000。
只有在原码和反码中,才是有两个零的(+0、-0)的。
但是,在计算机中,数值一律用补码表示和存储。
在计算机中,原码和反码,都不存在。
所以,+0、-0,在计算机中,都是不存在的。
那么,琢磨它们,解释它们,都是毫无意义的。
------------------
数值 0 既不是正数,也不是负数。可以说是“中性”的。
但是在计算机的编码中,不是1就是0,无法表示“中性”。
所以,计算机专家,为了糊弄众人,只好给零,弄出两个编码(+0、-0)。
后来才发现,糊弄人行,却糊弄不了计算机。
所以,原码和反码,这两种编码,都是无法应用的。
实际上,原码反码+0-0,这些垃圾概念,就是一派谎言。
正负数与补码,可以直接互换,并不需要绕到原码反码。
展开全部
你应该针对 0 求补码。而不是对 +0、-0 求补码。
补码的定义式如下:
X >= 0: [X]补 = X
X < 0: [X]补 = 模-| X |
由此可知,0 的补码就是 0。
不要被“原码反码取反加一”骗了!
那些,不过是个经验公式而已,漏洞百出的。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就没有正确的地方,在计算机中是不存在正负零之分的.而你对补码理解又有错误的.补码只不过是用来表示带符号数而已.补码的原则是:
正数的补码是其本身,也就是原码.
负数的补码是各位取反后加1.也就是其反码加1.
+0的补码就是其原码,也就是说是0000
0000而已(对于8位来说)
-0的补码是其反码加1,其反码是1111
1111,当然,其反码加1后就是溢出一个进位后,仍然是0000
0000.
正数的补码是其本身,也就是原码.
负数的补码是各位取反后加1.也就是其反码加1.
+0的补码就是其原码,也就是说是0000
0000而已(对于8位来说)
-0的补码是其反码加1,其反码是1111
1111,当然,其反码加1后就是溢出一个进位后,仍然是0000
0000.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询