是不是任意补码为数值部分的值加上-128就是真值 如补码10000001的真值为-127
2个回答
展开全部
八位的补码,在 128~255,是代表负数 -128 ~ -1 的。
用这个补码,加上-256,即可得出真值。
最终可导出:
补码的首位 1,既代表负号,又代表数值-2^(n-1)。
各位之和,就是补码所代表的整数。
例如,[X]补码 是: 1001 0111。
则:X =-128 + 16 + 4 + 2 + 1 = -105。
又如,[X]补码 是: 0001 0111。
则:X = 16 + 4 + 2 + 1 = +23。
----------------------
求补码所代表的数值,并不需要讨论:
“正数负数原码反码补码取反加一符号位不变”!
这些,都是专家用来唬人懵人骗人的戏法而已。
追问
那是不是负数的补码只要看后7位数的值加上-128也是一样的 如 补码10000001 后七位是0000001 它的值为1 ,1+(-128)=-127这样行不行
追答
后7位数的值加上-128也是一样的,对。
你少用了一位,即最高位。这个最高位,就是 -128。
剩下七位,加上 -128,正好。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询