Binary 二进制数-15和-1之间的差

Binary 二进制数-15和-1之间的差,binary,twos-complement,Binary,Twos Complement,我在学习二进制数和2的补码 假设我有二进制数1111。这是15,但也是-1(从2的补码方法得到) 您能解释一下如何判断它是15还是-1吗?取决于您使用的数据类型。大多数编程语言都提供有符号和无符号类型 如果没有数据类型,一系列位就没有任何意义。例如,无符号Int16只包含16位以下的正数,而有符号Int16也包含负数(当然,不包含正数)。取决于您使用的数据类型。大多数编程语言都提供有符号和无符号类型 如果没有数据类型,一系列位就没有任何意义。例如,无符号Int16将只包含16位以下的正数,而有符

我在学习二进制数和2的补码

假设我有二进制数1111。这是15,但也是-1(从2的补码方法得到)


您能解释一下如何判断它是15还是-1吗?

取决于您使用的数据类型。大多数编程语言都提供有符号和无符号类型


如果没有数据类型,一系列位就没有任何意义。例如,无符号Int16只包含16位以下的正数,而有符号Int16也包含负数(当然,不包含正数)。

取决于您使用的数据类型。大多数编程语言都提供有符号和无符号类型


如果没有数据类型,一系列位就没有任何意义。例如,无符号Int16将只包含16位以下的正数,而有符号Int16也将包含负数(当然,正数较少)。

如果寄存器是4位2的补码,则可能实现的最大值范围为-8到7,因此15是不可能的。要表示15,必须使用无符号寄存器。

如果寄存器是4位2的补码,则可能达到的最大值范围为-8到7,因此15是不可能的。要表示15,必须使用无符号寄存器。

这是定义问题。如果我写10,你可以读10(十进制)或2(二进制)或一大堆其他数字,这取决于数字系统。如果你不知道我用的是哪种系统,你就不可能知道我的意思。在您的例子中,15是无符号二进制中的答案,-1是2的互补二进制中的答案。

这是定义问题。如果我写10,你可以读10(十进制)或2(二进制)或一大堆其他数字,这取决于数字系统。如果你不知道我用的是哪种系统,你就不可能知道我的意思。在你的例子中,15是无符号二进制的答案,-1是2的补码二进制的答案。

他特别问2的补码,所以。。签名:)他问如何区分-1和15。所以1111可能是15(未签名)或-1(签名)。哦,好吧,我的错,我应该更仔细地阅读这个问题。。。删除我误导性的答案。他特别问2的补码,所以。。签名:)他问如何区分-1和15。所以1111可能是15(未签名)或-1(签名)。哦,好吧,我的错,我应该更仔细地阅读这个问题。。。删除我误导性的答案。