如何将十进制数转换为8位过量二进制数?

5
例如,我有一个数字-17。我知道17的二进制表示形式是:00010001,那么您如何将其转换为8位 excess binary 呢?
1个回答

4

首先,您需要为多余的表示选择一个偏差。由于典型情况下选择的偏差等于幅度内可用范围的一半,在8位中我们将选择-127作为偏差。

这意味着您有8个位将被解释为无符号整数,并且从该整数中减去127以获得最终结果。因此,由于我们有

final = unsigned + bias
final = -17
bias  = -127

我们最终得到
unsigned = final - bias = -17 - (-127) = 110

因此,-17的超过127的表示将是01101110(十进制为110)。

如果110和-17具有相同的二进制表示,你如何区分它们? - rrrocky
2
@rockydgeekgod:你不仅需要原始数据,还必须了解“表示规则”。一个有点相关的例子是:如果我告诉你“有10种人”,你怎么知道10是十进制十而不是二进制二? - Jon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接