作业帮 > 综合 > 作业

是不是任意补码为数值部分的值加上-128就是真值 如补码10000001的真值为-127

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/08 19:25:32
是不是任意补码为数值部分的值加上-128就是真值 如补码10000001的真值为-127
八位二进制代码,范围是 255,以补码形式,可代表真值:-128~+127.
八位的补码,在 127,即小于 128 时,直接代表零和正数.
该补码,就是该数的真值.
八位的补码,在 128~255,即大于 127 时,就代表负数 -128 -1 了.
用这个补码,加上-256,即可得出真值.
如补码 1000 0001,即 129,加上-256,即可得出真值为-127.
如补码 1000 0000,即 128,加上-256,即可得出真值为-128.
如补码 1111 1111,即 255,加上-256,即可得出真值为-1.
------
如果是负数,求补码,加上 256 即可.
如,真值是 -1,补码就是 256 - 1 = 255,这就是 -1 的补码.
做这些变换,根本不用二进制,也不用《求反加一》这些麻烦事.
再问: 那是不是负数的补码只要看后7位数的值加上-128也是一样的 如 补码10000001 后七位是0000001 它的值为1 ,1+(-128)=-127这样行不行
再答: 后7位数的值加上-128也是一样的,对。 你少用了一位,即最高位。这个最高位,就是 -128。 剩下七位,加上 -128,正好。