我想知道是否在浮点数字的替代方案上做了一些工作,在浮点数中,数字被简单地表示为指数(和符号位)。它将类似于浮点数,但尾数将被跳过,而基b (通常)不是2。
因此,唯一能代表的数字将是b的一些权力。
这里有一个简单的例子:让b为2^(2^-4),让我们使用8位来表示。第一个位用于符号,其余7个用于指数,指数在两个的补码中。然后
00000000 represents (2^(2^-4))^0 = 1
00000001 represents (2^(2^-4))^1 ≈ 1.044
10000000 represents -1
01000001 represents (2^(2^-4))^-63 ≈ 0.065
10111111 represents -(2^(2^-4))^63 ≈ -15.32请注意,可以添加0、NaN等的特殊情况。
这种表示法比通常的浮点表示法有一定的优点。例如,乘法变成加法,可表示的数字更平滑地分布。一个缺点可能是计算加法(我想出的实现是使用二叉树,当树很小并在硬件中实现时,它可能很快)。
任何与此表示有关的信息都将受到欢迎(无论是否已经考虑过,为什么会是坏的,如果它有一个名称,等等)。
发布于 2018-05-02 00:29:23
这是一个对数系统:“LNS可以被认为是一个浮点数,其意义总是等于1。”
https://stackoverflow.com/questions/50125350
复制相似问题