【发布时间】:2013-09-28 05:19:01
【问题描述】:
说明:如果可能,将这些十进制数转换为 5 位 2 的补码形式。如果不可能,请解释为什么会这样。
(16) 以 10 为底
根据在线转换器:
据我了解,
如果小数是正数:
- 第 1 步:将幅度转换为二进制。
- 第 2 步:将 0 填充到所需的位大小。
如果小数是负数:
- 第 1 步:将幅度转换为二进制。
- 第 2 步:将 0 填充到所需的位大小。
- 第 3 步:反转位以实现 1 的补码。
- 第 4 步:加 1 以实现 2 的补码。
由于 16 是正数,我只是通过重复除法将其转换为二进制,得到 (10000) 基数 2。
我不再填充 0,因为它已经是 5 位(包含 5 个数字)。
有人可以向我解释为什么在线转换器返回错误(我也坚信这是正确答案)?
【问题讨论】:
标签: binary decimal twos-complement ones-complement