发布网友 发布时间:2022-04-23 19:08
共2个回答
热心网友 时间:2023-10-14 07:26
八位的补码,在 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,正好。
热心网友 时间:2023-10-14 07:26
10000001的真值不应该是287吗追问10000001是补码 补码要先转换为原码的 原码的十进制数才是真值-127