问题标签 [mantissa]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3385 浏览

c - 获取无符号整数或浮点数(C)的尾数(浮点数)

所以,我正在尝试编写一个函数,它以 (尾数 * 2^exponent) 格式打印给定的浮点数 (n)。我能够得到符号和指数,但不能得到尾数(无论数字是多少,尾数总是等于 0.000000)。我所拥有的是:

关于问题可能是什么的任何想法?

0 投票
1 回答
46 浏览

floating-point - 检查数字是否为“谐波除数(矿石数)”时的浮点归一化

我的函数 isOre 正在检查数字是否为“谐波除数(矿石数)”(https://en.wikipedia.org/wiki/Harmonic_divisor_number#CITEREFCohenSorli2010)。我无法正确比较“结果变量”是否为整数,因为它的一部分在指数内。(https://www.h-schmidt.net/FloatConverter/IEEE754.html)。

我的问题是:1.我该如何解决?2. 是否有替代解决方案?

主要是我的测试用例序列必须通过。

我的输出:

array[i] double toInt 结果

1 1 1 1

6 2 2 1

28 3 3 1

140 5 5 1

270 6 6 1

496 5 5 1

672 8 8 0

1638 9 9 0

2970 11 11 0

6200 10 10 1

8128 7 7 1

8190 15 15 0

18600 15 15 0

18620 14 14 0

27846 17 17 0

30240 24 23 0

32760 24 24 0

55860 21 21 0

105664 13 13 0

117800 19 19 0

167400 27 27 0

173600 25 25 0

237510 29 29 0

242060 26 26 0

332640 44 43 0

360360 44 43 0

539400 29 29 1

695520 46 46 0

726180 39 39 0

753480 46 45 0

950976 27 27 0

1089270 42 42 0

1421280 47 46 0

1539720 47 46 0

PS 这无关紧要,但如果有人能指出为什么我的输出在以 672 开头的行之后发生了变化,我将非常感激。

链接到对应问题的材料。

http://planetmath.org/OreNumber

http://steve.hollasch.net/cgindex/coding/ieeefloat.html

http://www.cs.yale.edu/homes/aspnes/pinewiki/C(2f)FloatingPoint.html

https://en.wikipedia.org/wiki/Single-precision_floating-point_format

https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html

0 投票
1 回答
1053 浏览

floating-point - float可以表示的最大奇数是多少

我有一个关于浮点的问题。问题:给定一个具有一个符号位、8 个指数位和 23 个小数位的浮点格式。可以精确表示的最大奇数浮点数是多少?

我不确定,但我认为它 = 2^(尾数位 + 1) - 1

希望有人可以帮助我解决这个问题。

0 投票
1 回答
644 浏览

floating-point - 如何找到具有指数和尾数的最大可表示整数?

我有一个问题需要使用(6 指数和 9 尾数)找到最大的可表示整数

我知道指数有 5 位,尾数有 10 位,有 1 个符号位。

我知道如何找到尾数的低位和高位。我使用函数 (k/(2^(尾数)))。但是如何找到指数的高位和低位?它与位数(16)有关吗?

我正在查看说明(5 指数为 -16 和 15)的高和低的示例。但他们是如何到达那里的,我很困惑。

谢谢

0 投票
1 回答
33 浏览

r - 如何使用 R 创建向量 (10^16 + 1, 10^16 + 2, ... , 10^16 + 1000)?

我想创建以下向量 (10^16 + 1, 10^16 + 2, ... , 10^16 + 1000)。但如果我这样尝试:

它给了我一个近似值:

如何让 R 计算更精确?谢谢

0 投票
1 回答
171 浏览

floating-point - 次正规数是否有隐含的 0?

我试图理解什么是次正规数,我猜测指数固定为 -127,为了使数字更小,隐式 1 被隐式 0 替换。这听起来对吗?

0 投票
3 回答
1054 浏览

c - 将给定的尾数、指数和符号转换为浮点数?

我得到了尾数、指数和符号,我必须将其转换为相应的浮点数。我将 22 位用于尾数,9 位用于指数,1 位用于符号。

我从概念上知道如何将它们转换为浮点数,首先将指数调整回其位置,然后将结果数字转换回浮点数,但我在 C 中实现这一点时遇到了麻烦。我看到了这个线程,但我不能不懂代码,我不确定答案是否正确。谁能指出我正确的方向?我需要用C编码

编辑:我已经取得了一些进展,首先将尾数转换为二进制,然后调整二进制的小数点,然后将小数点二进制转换回实际的浮点数。我的转换函数基于这两个 GeekforGeek 页面(),但似乎进行所有这些二进制转换是漫长而艰难的。上面的链接显然是通过使用 >> 运算符以非常小的步骤完成的,但我不明白它是如何导致浮点数的。

0 投票
1 回答
743 浏览

c++ - 8bit浮点转小数

我有一个存储在 1 个字节中的浮点数(作为 8 位浮点数)。我们在 boost 或 c++11(或 14)中是否有一个库函数,可以将浮点数转换为小数?

我知道如何将 8 位(符号位、指数、尾数)转换为小数。我只是想利用库函数而不是编写一个新函数?

引用现有函数也会有所帮助

0 投票
1 回答
105 浏览

c - 我想知道如何在 C 中处理这些函数。我尝试解决它们但失败了

这就是我的代码。我试图做前两个,但我不确定它们是否正确,因为它没有输出任何不同的东西。我应该有的输出是这样的:

但是,在我尝试这样做之后,它仍然输出错误的输出。

它输出这个:

如果有人能指导我完成这件事,我将不胜感激。我刚开始学习C,我迷路了。

谢谢

0 投票
1 回答
166 浏览

python - 浮点尾数和指数底数 2

在这种情况下,我试图了解如何获得尾数和指数。这是我书中的一个例子。

我有这个公式(-1)^s * (1 + M) * b^E-e = x

仍然按书本,对于x = 1.602177 * 10^-19,我得到

S = 0,

M = 0.4777474,

E = 64

它的工作原理。

1 * 1.4777474 * 2^-63 = 1.602 10^-19*

但是,我不知道如何获取ME的值。

我读到E = log b |x| 那么M = |x|b^-E

在这种情况下E = log2(1.602177*10^-19) = -62.43660 (我正在使用日志基数 2 的网站,所以我不确定结果所以我尝试了 E = -62 和 -63) .

M = (1.602177 * 10^-19) * 2^-(-62) = 0.7388737

M = (1.602177 * 10^-19) * 2^-(-63) = 1.4777474

如果我错了,请纠正我,但尾数是浮点右侧的数字。在这种情况下,0.4777474 看起来是正确的。

此时我有E = -63 和M = 0.4777474,但E应该是 64