floating-point相关内容

Python/Numpy AttributeError:'float' 对象没有属性 'sin'

我要把这个贴在这里是因为它太像栗子了,让我有些头疼.这可以说是四年前发布的这个问题的副本,但是如果有人遇到我在这里遇到的特定的 pandas-numpy 不兼容问题,我会再次发布它.或者也许有人会想出更好的答案. 代码片段: #import pdb;pdb.set_trace()# TODO: 这会引发 AttributeError: 'float' object has no attri ..
发布时间:2021-11-30 15:37:46 Python

C 从文字浮点数赋值

在阅读 关于 3D 图形的书的一部分时 我遇到了以下作业: const float vertexPositions[] = {0.75f, 0.75f, 0.0f, 1.0f,0.75f、-0.75f、0.0f、1.0f、-0.75f、-0.75f、0.0f、1.0f、}; 为什么需要 f 后缀?不能从变量的类型确定文字的类型吗?我相信没有 f 浮点文字被解释为双打,但为什么当数组显然是 fl ..
发布时间:2021-11-30 12:19:18 其他开发

为什么 GCC 不将 a*a*a*a*a*a 优化为 (a*a*a)*(a*a*a)?

我正在对科学应用程序进行一些数值优化.我注意到的一件事是 GCC 将通过将其编译为 a*a 来优化调用 pow(a,2),但是调用 pow(a,6) 没有优化,实际上会调用库函数pow,大大降低了性能.(相比之下,Intel C++ Compiler,可执行icc,将消除库调用对于 pow(a,6).) 我很好奇的是,当我使用 GCC 4.5.1 将 pow(a,6) 替换为 a*a*a*a ..
发布时间:2021-11-30 11:10:26 其他开发

进行水平 SSE 向量求和(或其他缩减)的最快方法

给定一个包含三个(或四个)浮点数的向量.总结它们的最快方法是什么? SSE(movaps、shuffle、add、movd)总是比 x87 快吗?SSE3 中的水平添加指令值得吗? 转移到 FPU 的成本是多少,然后是 faddp,faddp?最快的特定指令序列是什么? “尝试安排事物以便您一次可以对四个向量求和"将不被接受作为答案.:-) 例如为了对数组求和,您可以使用多个向量 ..
发布时间:2021-11-30 11:04:46 其他开发

为什么 sin(45) 和 cos(45) 给出不同的结果?

这是我没想到的.我知道这些数字不是 100% 准确的,但我没想到互补角会给出 sin 和 cos 的不同结果: 以下函数返回0.70710678118654746000000... sin(45 * PI/180.0); 虽然下面的函数返回0.70710678118654757000000... cos(45 * PI/180.0); 所以,它是: 0.70710678118654 ..
发布时间:2021-11-27 23:53:13 C/C++开发

浮动和双重比较最有效的方法是什么?

比较两个 double 或两个 float 值的最有效方法是什么? 仅仅这样做是不正确的: bool CompareDoubles1(双 A,双 B){返回 A == B;} 但类似于: bool CompareDoubles2(双 A,双 B){差异 = A - B;返回 (diff ..
发布时间:2021-11-26 23:49:18 C/C++开发

C 和 C++ 中 float 和 double 的大小是多少?

我想看看是否有任何类似于 uint32_t 的标准类型,它总是会映射到 32 位无符号整数类型,但我找不到. float 的大小在所有平台上总是 4 字节吗? double 的大小总是 8 吗? 这两个标准是否对此事有任何说明? 我想确保我的大小在所有平台(x86 和 x64)上始终相同,所以我使用标准的 int 类型,但是我找不到任何类似的 float 和 双. 解决方 ..
发布时间:2021-11-26 14:53:10 C/C++开发

使用 LibTIFF.NET C# 将带有浮点像素值的 32 位灰度 Tiff 阵列化

我刚开始在我的 c# 应用程序中使用 LibTIFF.NET 来读取 Tiff 图像作为从 ArcGIS 服务器获得的高度图.我所需要的只是用图像的像素值填充一个数组,以便基于平滑的梯度生成地形.该图像是 LZW 压缩的 32 位灰度 Tiff,浮点像素值以米为单位表示海拔. 有些日子以来我一直在努力返回正确的值,但假设它是全黑或全白的图像,我得到的只是“0"值! 这是到目前为止的代码 ..
发布时间:2021-11-26 14:31:19 C#/.NET

8 位浮点数的浮点转换

考虑以下基于 IEEE 浮点的 8 位(是,8 位,不是 8 字节)浮点表示格式. 格式A: 有一个符号位. 有 k=3 个指数位. 有 n=4 个小数位. 格式 B: 有一个符号位. 有 k=4 个指数位. 有 n=3 个小数位. 下面,您将获得模式 A 的一些位模式.您的任务是找出给定数字的值按格式 A 并将它们转换为格式 B 中最接近的值. 格式A 格式B位 ..
发布时间:2021-11-26 14:30:28 其他开发

将字节流转换为数字数据类型

假设我有一个字节流,其中我知道 64 位值(64 位随机数)的位置.字节顺序是 Little-Endian.由于 PHP 的整数数据类型仅限于 32 位(至少在 32 位操作系统上),我如何将字节序列转换为 PHP 数字表示(我认为浮点数就足够了)? $serverChallenge = substr($bytes, 24, 8);//$serverChallenge 现在包含字节序列//其中我 ..
发布时间:2021-11-26 14:15:05 PHP

在 C 中最小化浮点错误的经验法则?

关于最小化浮点运算中的错误,如果我在 C 中有如下操作: float a = 123.456;浮动 b = 456.789;浮动 r = 0.12345;a = a - (r * b); 如果我将乘法和减法步骤分开,计算结果是否会改变,即: float c = r * b;a = a - c; 我想知道 CPU 是否会以不同的方式处理这些计算,从而在一种情况下误差可能更小? 如果不是 ..
发布时间:2021-11-26 14:14:29 其他开发

添加 32 位浮点数.

我学到的比我想知道的浮点数还要多. 假设我需要添加: 1 10000000 00000000000000000000000 1 01111000 11111000000000000000000 2 的补码形式. 第一位是符号,接下来的 8 位是指数,最后 23 位是尾数. 不转换为科学记数法,如何将这两个数字相加?你能一步一步地走过去吗? 这些东西有什么好 ..
发布时间:2021-11-26 14:14:20 其他开发

将十进制值转换为 32 位浮点十六进制

对于我正在开发的一个简单实用程序,我需要一个脚本来将给定的十进制值转换为 32 位浮点十六进制值.例如,我知道 1 是 3F800000,100 是 42C80000,但是我不知道如何用任何数字返回这些结果.如果有人知道执行此操作的简单公式甚至复杂方法,请分享. 解决方案 我不知道我是否正确理解了极端情况,但无论如何,这里有一些代码: function floatToIntBits(f) ..
发布时间:2021-11-26 14:09:34 前端开发

在返回浮点更改结果的方法中将结果转换为浮点数

为什么此代码在 .NET 4 中打印 False?显式转换似乎导致了一些意外行为. 我想要一个超越“浮点数不准确"或“不要那样做"的答案. float a(float x, float y){返回 ( x * y );}浮动b(浮动x,浮动y){返回(浮动)(x * y);}无效主(){Console.WriteLine( a( 10f, 1f/10f ) == b( 10f, 1f/10 ..
发布时间:2021-11-26 10:28:16 C#/.NET

为什么 (360/24)/60 = 0 ... 在 Java 中

我正在尝试计算 (360/24)/60 当我应该得到 0.25 时,我不断得到答案 0.0 一句话:我想将 360 除以 24,然后将结果除以 60 public class Divide {公共静态无效主(字符串 [] args){浮动 div = ((360/24)/60);System.out.println(div);}} 打印出来: 0.0 这是为什么?我是在做一些 ..
发布时间:2021-11-25 20:56:07 Java Web开发

使用 == 运算符比较浮点/双精度值

当我开始使用相等运算符比较两个浮点值时,我使用的代码审查工具会出现以下问题.什么是正确的方法以及如何去做?是否有我可以重用的辅助函数(commons-*)? 说明 无法使用等号 (==) 运算符比较浮点值 说明 由于舍入误差,使用等式 (==) 或不等式 (!=) 运算符来比较浮点值并不总是准确的. 推荐 比较两个浮点值,看看它们的值是否接近. float a ..
发布时间:2021-11-25 20:50:51 Java Web开发

如何检查字符串是否可解析为双精度值?

是否有一种本地方式(最好不实现您自己的方法)来检查字符串是否可以使用 Double.parseDouble() 解析? 解决方案 常用的方法是使用正则表达式检查它,就像 Double.valueOf(String) 文档. 那里提供的正则表达式(或包含在下面)应该涵盖所有有效的浮点情况,所以你不需要摆弄它,因为你最终会错过一些更好的点. 如果您不想这样做,try catch 仍 ..
发布时间:2021-11-25 20:46:44 Java Web开发

为什么 Double.NaN==Double.NaN 返回 false?

我刚刚在研究 OCPJP 问题,我发现了这个奇怪的代码: public static void main(String a[]) {System.out.println(Double.NaN==Double.NaN);System.out.println(Double.NaN!=Double.NaN);} 当我运行代码时,我得到: false真的 当我们比较两个看起来相同的东西时,输出 f ..
发布时间:2021-11-25 20:35:02 Java Web开发

如何使用Java将float转换为int

我使用以下行将 float 转换为 int,但它没有我想要的那么准确: float a=8.61f;国际b;b=(int)a; 结果是:8(应该是9) 当a = -7.65f时,结果为:-7(应该是-8) 最好的方法是什么? 解决方案 使用 Math.round() 会将浮点数四舍五入到最接近的整数. ..
发布时间:2021-11-25 20:22:45 Java Web开发