Binary 8位2'的十进制值是多少;s的补码是11010110?
这更像是一个硬件问题,但我无法解决这个问题。我原以为是214,但因为左边的第一位,我不太确定 因为它是2的补码,所以第一位是1意味着它是负数 该值为214-256=-42 它也可以计算为-(~214+1)=-(41+1)=-42Binary 8位2'的十进制值是多少;s的补码是11010110?,binary,decimal,complement,Binary,Decimal,Complement,这更像是一个硬件问题,但我无法解决这个问题。我原以为是214,但因为左边的第一位,我不太确定 因为它是2的补码,所以第一位是1意味着它是负数 该值为214-256=-42 它也可以计算为-(~214+1)=-(41+1)=-42 二进制,即-(~11010110+1)=-(00101001+1)=-00101010。因为它是2的补码,第一位为1意味着它是负数 该值为214-256=-42 它也可以计算为-(~214+1)=-(41+1)=-42 二进制,即-(~11010110+1)=-(001
二进制,即-(~11010110+1)=-(00101001+1)=-00101010。因为它是2的补码,第一位为1意味着它是负数 该值为214-256=-42 它也可以计算为-(~214+1)=-(41+1)=-42
二进制,即-(~11010110+1)=-(00101001+1)=-00101010。翻译很简单: 1:从x中减去1 11010110-00000001=11010101 2:倒过来 00101010 3:计算二进制到dec(但忽略第一位) 2+8+32=42 4:记住原始值的第一位(=1)
如果1=>倒转它=>-42则翻译很简单: 1:从x中减去1 11010110-00000001=11010101 2:倒过来 00101010 3:计算二进制到dec(但忽略第一位) 2+8+32=42 4:记住原始值的第一位(=1)
如果1=>反转它=>-42你可以判断它是一个负数,因为在最左边的位位置有一个
1
。获得幅值的一种方法是反转所有位,然后添加1
11010110
00101001 <= inverted
00101010 <= +1
11010110
00101001您可以判断它是一个负数,因为在最左边的位位置有一个1
。获得幅值的一种方法是反转所有位,然后添加1
11010110
00101001 <= inverted
00101010 <= +1
11010110
00101001注意:您至少可以在Windows 7的计算器中检查答案(视图>程序员,将字长设置为Byte,然后将其设置为Bin,键入数字,然后将其设置回Dec)。注意:您至少可以在Windows 7的计算器中检查答案(查看>编程器,将字长设置为Byte,然后将其设置为Bin,键入数字,然后将其设置回Dec)。