解释有符号和无符号数字



老师告诉我们,对于考试1000 0001,二进制数有2种含义。 一个表示 -127(有符号),即从 -127 到 127另一个是无符号数,从0到256

如果我有一个二进制数字,例如 1000 0001 ,计算器仅显示有符号数字 (-127)。 我怎么知道这个二进制数代表的无符号数字是什么?

有符号和无符号数字具有完全相同的位

在计算器中,您可以显示为十六进制 (0xff)。 是否要解释十六进制数字和"有符号"或"无符号"取决于您。

在 x86 汇编程序中,您可以检查 CPU 状态标志中的"符号位"。

查看本教程:

有符号数字与无符号数字

无符号数字最容易从二进制解释;只需将位表示的所有值相加(在数字1000 0001 =129的情况下2^7+2^0)。

签名的解释几乎相同,只是先多走了一步:如果前导数字是 1 ,则反转所有位(在本例中为 0111 1110 )并将1添加到结果中,得到负数的(绝对)值(在本例中0111 1111 =127)

要测试您是否正确执行,请再次执行相同的操作,您应该最终得到原始数字。

最新更新