【发布时间】:2015-08-10 18:33:00
【问题描述】:
使用....
二进制补码23位尾数中尾数8位指数的符号位
编码如下:-28.625
谁能告诉我最简单的方法...讲师不是很有帮助!
【问题讨论】:
标签: floating-point cpu-architecture negative-number mantissa
使用....
二进制补码23位尾数中尾数8位指数的符号位
编码如下:-28.625
谁能告诉我最简单的方法...讲师不是很有帮助!
【问题讨论】:
标签: floating-point cpu-architecture negative-number mantissa
有一个有用的在线计算器here。它表明-28.625 (-1.7890625 * 2^4) 是:
1 10000011 11001010000000000000000
s eeeeeeee mmmmmmmmmmmmmmmmmmmmmmm
= =
1 131
=
127 + 4
或:
0xc1e50000
请注意,尾数开头有一个隐含的1 位。
【讨论】:
如果数字为负数,则第一位表示为 1。接下来将整数部分和小数部分转换为二进制值。将基数移到最左边的 1 位旁边,并计算它移动了多少个位置,这是你的 n,右边的所有位都会变成尾数。至于指数,它是偏差 (2^n-1) + n,所以在这种情况下偏差是 2^8-1 = 127,并将 n 添加到此,将其转换为二进制。其余的位用于尾数。我相信答案是11000001111001010000000000000000
【讨论】: