问题标签 [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.
c - 获取无符号整数或浮点数(C)的尾数(浮点数)
所以,我正在尝试编写一个函数,它以 (尾数 * 2^exponent) 格式打印给定的浮点数 (n)。我能够得到符号和指数,但不能得到尾数(无论数字是多少,尾数总是等于 0.000000)。我所拥有的是:
关于问题可能是什么的任何想法?
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
floating-point - float可以表示的最大奇数是多少
我有一个关于浮点的问题。问题:给定一个具有一个符号位、8 个指数位和 23 个小数位的浮点格式。可以精确表示的最大奇数浮点数是多少?
我不确定,但我认为它 = 2^(尾数位 + 1) - 1
希望有人可以帮助我解决这个问题。
floating-point - 如何找到具有指数和尾数的最大可表示整数?
我有一个问题需要使用(6 指数和 9 尾数)找到最大的可表示整数
我知道指数有 5 位,尾数有 10 位,有 1 个符号位。
我知道如何找到尾数的低位和高位。我使用函数 (k/(2^(尾数)))。但是如何找到指数的高位和低位?它与位数(16)有关吗?
我正在查看说明(5 指数为 -16 和 15)的高和低的示例。但他们是如何到达那里的,我很困惑。
谢谢
r - 如何使用 R 创建向量 (10^16 + 1, 10^16 + 2, ... , 10^16 + 1000)?
我想创建以下向量 (10^16 + 1, 10^16 + 2, ... , 10^16 + 1000)。但如果我这样尝试:
它给了我一个近似值:
如何让 R 计算更精确?谢谢
floating-point - 次正规数是否有隐含的 0?
我试图理解什么是次正规数,我猜测指数固定为 -127,为了使数字更小,隐式 1 被隐式 0 替换。这听起来对吗?
c - 将给定的尾数、指数和符号转换为浮点数?
我得到了尾数、指数和符号,我必须将其转换为相应的浮点数。我将 22 位用于尾数,9 位用于指数,1 位用于符号。
我从概念上知道如何将它们转换为浮点数,首先将指数调整回其位置,然后将结果数字转换回浮点数,但我在 C 中实现这一点时遇到了麻烦。我看到了这个线程,但我不能不懂代码,我不确定答案是否正确。谁能指出我正确的方向?我需要用C编码
编辑:我已经取得了一些进展,首先将尾数转换为二进制,然后调整二进制的小数点,然后将小数点二进制转换回实际的浮点数。我的转换函数基于这两个 GeekforGeek 页面(一、二),但似乎进行所有这些二进制转换是漫长而艰难的。上面的链接显然是通过使用 >> 运算符以非常小的步骤完成的,但我不明白它是如何导致浮点数的。
c++ - 8bit浮点转小数
我有一个存储在 1 个字节中的浮点数(作为 8 位浮点数)。我们在 boost 或 c++11(或 14)中是否有一个库函数,可以将浮点数转换为小数?
我知道如何将 8 位(符号位、指数、尾数)转换为小数。我只是想利用库函数而不是编写一个新函数?
引用现有函数也会有所帮助
c - 我想知道如何在 C 中处理这些函数。我尝试解决它们但失败了
这就是我的代码。我试图做前两个,但我不确定它们是否正确,因为它没有输出任何不同的东西。我应该有的输出是这样的:
但是,在我尝试这样做之后,它仍然输出错误的输出。
它输出这个:
如果有人能指导我完成这件事,我将不胜感激。我刚开始学习C,我迷路了。
谢谢
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*
但是,我不知道如何获取M和E的值。
我读到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