mantissa

    0热度

    1回答

    这是我的问题。我正在做一些工作,并看到两个不同的答案。我正在使用一个计算器(在线)来检查我的答案,它与我应该得到的答案冲突,我需要看看哪一个是正确的。 问题是: -6.25 我工作了6.25,然后采取了二补。 6.25 - > 0110.001 尾数 - > 0.11000100000指数 - > 0011 我的回答:2的补1.00111100000指数 - > 0011 答案我应该得到说:尾数

    2热度

    1回答

    我已经在这方面做了很多工作,并且认为我错过了关于“压裂”部分的内容。在这个5位浮点中,符号位是最重要的,接下来的两位是指数,指数偏置是1.最后两位是有效数(尾数)。 所以我有一堆值,但我只是想更好地理解该方法。第一个是: 0 00 01 我知道方程是 V = (-1)^s * m * 2^E 注册是零,并且由于数规格化,E = 1-偏压= 0 (是吗?) 所以,我有: V = 1 * m

    3热度

    2回答

    任何人都可以提供有关如何从VB.net中获得尾数和指数的任何建议吗?我知道我可以做一个字符串解析和一些转换为整数,但我想知道是否有人有一个数学等价的公式,可以让我这样做? 非常感谢

    0热度

    1回答

    嗯,我觉得不好意思,我不能由我自己得到这个,但.. 我怎样才能减少尾数(和指数)位与一个浮点数? 我训练(卷积)人工神经网络(我实现它FPGA),我想学习位宽对比测试尾数(和指数)之间的关系(和训练)CPU(和GPU)的准确性。下一步就是将我的浮点数转换为固定点表示形式(这就是我在FPGA上使用的),然后看看结果如何。 (Tong,Rutenbar和Nagle(1998)]和[Leeser and

    2热度

    1回答

    把这个功能让时间的双重使用clock_gettime: // return current time in milliseconds static double time_get_ms(void) { struct timespec res; #ifdef ANDROID clock_gettime(CLOCK_REALTIME_HR, &res); #else

    8热度

    2回答

    在一款非常高性能的应用程序中,我们发现CPU可以计算长计算的速度明显快于双精度。但是,在我们的系统中,确定我们从不需要超过9位小数位的精度。所以我们对所有浮点运算都使用long,并且理解了9点精度。 但是,在系统的某些部分,由于可读性与双打一起工作,因此更方便。所以我们必须将假设9位小数的长整数值转换为双整数值。 我们发现简单地取长整数除以10的幂乘以9或乘以1除以10的幂后得到不精确的表示。 为

    3热度

    1回答

    我正在使用Matlab并使用scientific notation中的数字,用e代表指数。在Matlab中的一个例子: >> 2e5 ans = 200000 现在想(分别为e的左侧和右侧),在科学记数法表示的工作,但使用变量来保存尾数和指数的值。我不明白,如果没有将变量名称与指数字母e进行合并,可以如何完成此操作。例如: >> rr=5; >> 2err ??? 2err | E

    5热度

    1回答

    我试图在float中扫描:13.8518009935297。第一个例程是我自己的,第二个是MacOSX libc的 strtod,第三个是GMP的mpf_get_d(),第四个是perls numeric.c:Perl_my_atof2()。 我用这个片段打印尾数: union ieee_double { struct { uint32_t fracl;

    6热度

    1回答

    我有一些简单的代码比较两个浮点值来说明我看到的GCC优化的问题,并希望有人能帮助我弄清楚为什么它产生的输出在一些下有所不同可重复的情况。 首先,我知道将浮点值与==比较是不好的,因为尾数可能会有一些非常小的数值,但在我的示例中情况并非如此。我遇到的问题是基于2个因素的输出更改。 1)我传入的优化标志,以及2)如果我取消注释std :: cout行。 为什么GCC代码在-O2下产生不同的运行? 如果

    0热度

    1回答

    我正在用Verilog实现一个硬件双精度加法器。在验证阶段,当我将硬件输出与MATLAB(或C)双精度加法输出进行比较时,发现LSB不匹配的一些奇怪情况,考虑到我正在使用相同的舍入模式(舍入到最近偶数) 。我的问题是关于C计算的准确性,它是否在舍入时真正准确,还是仅限于某些CPU架构(32位或64位)? 下面是一个例子, A = 0x62a5a1c59bd10037 = 1.59449333962