【问题标题】:Difference between signed and unsigned 16bit BCDs?有符号和无符号 16 位 BCD 之间的区别?
【发布时间】:2010-11-11 00:34:53
【问题描述】:

你如何区分? 例如,假设您有0110 0101 1001 0011。 无符号 BCD 是 6593,但有符号值是多少?

【问题讨论】:

    标签: unsigned signed bcd


    【解决方案1】:

    通常,您可以通过explicitly storing the sign 来区分。

    基数补码 (en.wikipedia.org/wiki/Method_of_complements)

    【讨论】:

    • 这很奇怪,因为在我的汇编类中 0110 000 000 000 应该是 6000 未签名(显然)但 -4000 已签名。 -4000 是如何签名的?
    • 啊哈,这确实是这里发生的事情。你应该发布一个答案!
    【解决方案2】:

    在正常的二进制系统中,带符号的数字使用MSB(最高有效位)来确定数字的符号,数字的其余部分是实际值。

    与 Packed BCD 不同,4 个 LSb(最低有效位)代表符号,其余(左侧)数字代表实际值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-02
      • 2013-09-29
      • 2011-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多