原码 反码 补码 计算书上说补码是原码的符号位不变,其他变,如:原码11100101反码10011010补码10011011但为什么很多书上确是把上题的反码写成是00011010呢?不懂,那不是全变了吗?一个字长为八位的计算机中,采用补码表示,符号位占一位,则-128在计算机中表示为:_____-128的原码是10000000,其反码不应该是11111111,为什么是01111111,不是反码符号位不变,其余取反吗?你上面说得我都明白了,就是最后一句:为什么表数范围补码要多一个?原因在于补码中真值0只对应一个编码,而在反码中真值0对应两个编码.我不太明白,为什么只对应一个编码的反而会比对应两个编码的表数范围多一个?不好意思,麻烦你再为我讲解一下,
问题描述:
原码 反码 补码 计算
书上说补码是原码的符号位不变,其他变,如:原码11100101
反码10011010
补码10011011
但为什么很多书上确是把上题的反码写成是00011010呢?不懂,那不是全变了吗?
一个字长为八位的计算机中,采用补码表示,符号位占一位,则-128在计算机中表示为:_____
-128的原码是10000000,其反码不应该是11111111,为什么是01111111,不是反码符号位不变,其余取反吗?
你上面说得我都明白了,就是最后一句:为什么表数范围补码要多一个?原因在于补码中真值0只对应一个编码,而在反码中真值0对应两个编码.我不太明白,为什么只对应一个编码的反而会比对应两个编码的表数范围多一个?不好意思,麻烦你再为我讲解一下,
答
正数:正数的反码与原码相同.负数:负数的反码,符号位为“1”,数值部分按位取反.例如:符号位 数值位[+7]反= 0 0000111 B[-7]反= 1 1111000 B所以楼主再仔细看一下书,究竟00011010是+26的反码,还是负数的反码-------...