-8的补码为什么是1000,而不是11000,+8的补码不应该是1000吗?

问题描述:

-8的补码为什么是1000,而不是11000,+8的补码不应该是1000吗?
1个回答 分类:数学 2014-11-09

问题解答:

我来补答
这里首先要明确的是数据用几位二进制表示!
如果用4位表示,-8的补码就是1000,如果用5位表示,那-8的补码就是11000……用8位表示-8的补码就是11111000了.现在的计算机,int型多是32位二进制了,那-8的补码就是二进制11111111 11111111 11111111 11111000.所以你说-8的补码不是11000欠准确!
对于正数,原码、反码、补码的二进制形式规定是一样的,所以无论有多少位,形式都不变化.
补码概念和规则的引入,是解决负数在计算机中的表示和运算问题的.通俗地讲就是引入补码概念和规则后,计算机中就连同符号位只简单地作无符号加法运算,而依据某些规则来判断结果的正确性,就用不着再关心谁是正数谁是负数、是在做加法还是在做减法了,这也简化了计算机硬件的设计……而规定正数的原码、反码、补码一样,则是为理论上的完善,这样我们就认为计算机中的整数全是补码了……这完全是个人理解,仅供参考.
 
 
展开全文阅读
剩余:2000
上一页:周五
下一页:责任的事实论据