【问题标题】:Negative numbers in fixed point format定点格式的负数
【发布时间】:2021-12-06 08:38:32
【问题描述】:

如果我有一个数字-1.101001_2 * 2^(-4),即十进制的-0.1025390625,那么这个数字的正确定点表示形式是什么?

根据我对定点的理解,这意味着它应该被签名,所以我认为这会给出一个 12 的字长和 10 的分数长度,即:

1   0    0001101001
(s)        (frac)
--- (word)-------

但这似乎不正确,因为字长为 12 且小数长度为 10(1 个有符号位)的 100001101001 改为提供 -1.8975

我是不是翻译有误?

【问题讨论】:

    标签: binary fixed-point


    【解决方案1】:

    我怀疑您混淆了有符号值的符号幅度和二进制补码表示。定点数被视为整数,因此如果您想要有符号的定点值,它们几乎肯定会使用二进制补码表示。

    如果您的实际值为 -0.1025390625 并且您有 10 个小数位,则相应的定点值为 -0.1025390625 * 210 = -105

    -105 的正确 12 位二进制补码表示为 1111 1001 0111

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多