作为两个双精度数之和的双精度浮点数

2023-12-14

下列的双精度算术的论文和源代码一段时间以来,我仍然无法弄清楚 dd_real (定义为struct dd_real { double x[2];...}) 数字被分成两个双精度数。假设我用字符串初始化它,dd_real pi = "3.14159265358979323846264338327950";将会是什么pi.x[0] and pi.xi[1]?我需要理解它,然后编写一个希望很小的 Python 函数来完成它。

我不只是想调用 QD 库的原因是我更喜欢在 Python 中重新实现正确的分割,以便我将 35 位精度常量(以字符串形式给出)发送为double2到 CUDA 代码,它将被视为双精度实数GQD库-- 似乎是唯一一个处理 CUDA 中扩展精度计算的库。不幸的是,在 Python 方面,这也排除了 mpmath。


假设你初始化了你的double double与二进制数:

1.011010101111111010101010101010000000101010110110000111011111101010010101010
  < ---                 52 binary digits         --- >< --- more digits --- >

然后一个double1.0110101011111110101010101010100000001010101101100001另一个将是1.1011111101010010101010 * 2^-53

当您将这两个数字(作为实数)相加时,总和就是初始值。第一个在其 52 位尾数中包含尽可能多的位。第二个包含剩余的位以及适当的指数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

作为两个双精度数之和的双精度浮点数 的相关文章

  • 浮点舍入效果说明

    include
  • 浮点型、双精度型和十进制最大值与大小的关系[重复]

    这个问题在这里已经有答案了 我在 C 中遇到了这些数据类型的大小和最大值的令人困惑的模式 在使用 Marshal SizeOf 比较这些大小时 我发现了以下结果 Float 4 bytes Double 8 bytes Decimal 16
  • 二进制浮点加法算法

    我试图理解二进制级别的 IEEE 754 浮点加法 我遵循了一些在网上找到的示例算法 并且大量测试用例与经过验证的软件实现相匹配 我的算法目前只处理正数 但是 我没有得到与此测试用例的匹配 0000100011110011011001001
  • 为什么没有 2 字节浮点并且已经存在实现?

    假设我真的内存不足并且想要更小的范围 类似于short vs int 着色器语言已经支持half对于半精度的浮点类型 不仅仅是来回转换使值在 1 和 1 之间 即返回一个像这样的浮点数 shortComingIn maxRangeOfSho
  • 从 std::round 转换为 int 是否安全?

    我有一个问题标准 圆形 http www cplusplus com reference cmath round 带签名 double round double x 假设我有这个代码 int i std round 0 9 在这种情况下 s
  • TSQL - 生成文字浮点值

    我理解比较浮点数时遇到的许多问题 并对它们在这种情况下的使用感到遗憾 但我不是表格作者 只有一个小障碍需要克服 有人决定使用浮点数 就像您期望使用 GUID 一样 我需要检索具有特定浮点值的所有记录 sp help MyTable Colu
  • 使用浮点/双除法比较可约分数

    假设我有两个分数 a b 和 c d 其中 a b c d 都是大于 0 的整数 使用以下函数检查它们的相等性是否安全 bool are equal fractions int a int b int c int d return stat
  • 浮点字节序?

    我正在为实时海上模拟器编写客户端和服务器 并且由于我必须通过套接字发送大量数据 因此我使用二进制数据来最大化可以发送的数据量 我已经了解整数字节顺序以及如何使用htonl and ntohl为了规避字节顺序问题 但我的应用程序与几乎所有模拟
  • 在 Haskell 中将字符串转换为整数/浮点数?

    data GroceryItem CartItem ItemName Price Quantity StockItem ItemName Price Quantity makeGroceryItem String gt Float gt I
  • 在没有 epsilon 的情况下可以将浮点数与 0.0 进行比较吗?

    我知道 要比较两个浮点值 需要使用一些 epsilon 精度 因为它们并不精确 但是 我想知道是否存在边缘情况 我不需要那个 epsilon 特别是 我想知道这样做是否总是安全的 double foo double x if x lt 0
  • 将浮点型转换为双精度型

    我正在尝试转换Single to Double同时保持原来的价值 我找到了以下方法 Single f 5 2F Double d1 f 5 19999980926514 Double d2 Double Parse f ToString 5
  • 如何准确判断 double 是否为整数? [复制]

    这个问题在这里已经有答案了 具体来说 在 Java 中 我如何确定double是一个整数 为了澄清 我想知道如何确定 double 实际上不包含任何分数或小数 我主要关心的是浮点数的性质 我想到的方法 以及我通过谷歌找到的方法 基本上遵循以
  • 从 CAMPARY 输出值

    我正在尝试使用CAMPARY http homepages laas fr mmjoldes campary 库 CudA 多精度算术库 我已经下载了代码并将其包含在我的项目中 由于它同时支持 cpu 和 gpu 因此我从 cpu 开始了解
  • iOS5 Xcode4.2浮点字节对齐错误?

    看这段代码 这是具有 1 字节结构包装的结构定义文件 用于套接字网络 pragma pack 1 typedef struct TestStruct1 double d1 double d2 TestStruct1 typedef stru
  • 空序列的算术平均值是多少?

    免责声明 不 我没有找到任何明显的答案 这与我的预期相反 在寻找代码示例时 算术平均值 我可以通过谷歌找到的前几个例子似乎是这样定义的 空序列生成的平均值为0 0 eg here https rosettacode org wiki Ave
  • 在Python中创建32位浮点wav文件?

    我想在 Python 2 x 中创建 32 位浮动 WAV 文件 虽然 标准 WAV 文件通常使用 int 但许多专业音频应用程序将音频数据处理 并保存 为 float 标准波形模块无法执行此操作 http bugs python org
  • 基数排序浮动数据

    基数如何对浮点数据进行排序 例如 12 4 45 13 等 它会先读取小数点右侧吗 还是先读取小数点左侧 然后 如果它读取小数点右侧 它将如何处理这些数字 会它首先读取最右边的 请参阅本页的讨论 http codercorner com R
  • 在 C++ 中,将 float 转换为 double 再转换回 float 是否给出相同的值

    假设在下面的代码中 float f1 double d1 static cast
  • HUGE_VALF 和 INFINITY 常量之间的区别

    在 OpenCL 中 有两个代表无穷大的浮点数学常数 其中之一很简单INFINITY 另一个 HUGE VALF 求值为 无穷大 这两者有什么区别 求值至 无穷大是什么意思 HUGE VALF是一个旧名称 允许不支持无穷大的浮点系统 例如
  • 为什么 Go 中只有 int 而没有 float?

    在 Go 中 有这样的类型int这可能相当于int32 or int64取决于系统架构 我可以声明一个整数变量而不用担心它的大小 var x int 为什么没有这个类型float 这相当于float32 or float64取决于我的系统架

随机推荐

  • Phonegap 文件上传 Java 服务器

    我正在尝试在 Java 服务器上上传图像 该文件正在从 Android 设备传输 但在服务器上保存 null 这是服务器代码 public UploadMediaServerResponse uploadFileForFunBoard Fo
  • Xamarin 自定义视图 ClassNotFoundException

    我是 Xamarin 的新手 我试图在 Android 应用程序中创建自己的视图 但它在构造函数上抛出 ClassNotFoundException 我正在寻找类似的问题 但没有找到类似的问题 仅here我认为可能非常相似 但实际上并没有解
  • 如何用bindvalue和%准备语句?

    是的 当我尝试对之前看起来像这样的变量使用绑定值时 我遇到了问题 users firstname LIKE firstname 现在看起来像这样 users firstname LIKE firstname 但还是不行 也试过了 users
  • 无法使用代理设置连接到 SOAP API

    我正在使用 requests 和 zeep 库通过 SOAP API 连接到服务器 如果我手动设置互联网代理 我可以连接 但是 我打算在脚本中使用代理设置来自动化该过程 我正在使用以下代码块来执行此操作 但出现以下错误 谁能帮助我 我在哪里
  • SQL有多少条记录以相同字母开头

    所以我在数据库的 A 列中有数千条记录 我想看看有多少个字母以字母开头 以及所有个位数 所以我需要一个计数和与之相关的字母 我还想查看所有两个字母数字组合 即 aa ab ac ad ae 等及其计数 还有三个和四个字符等 一般情况下你可以
  • 如何阻止光标跳到末尾?

    我正在使用 Antd 输入库 每当我在单词的开头或中间输入时 我的光标就会跳到结尾 const handleOpenAnswer key value gt handleFieldChange settings settings key va
  • 如何在 Spring Boot 应用程序中使用 Hibernate Validation 进行 Bean 验证?

    我正在 Spring Boot 应用程序中学习 Hibernate 验证 并且我有一个 Rest 控制器和一个 POST 方法 当我发出请求时 如果某个字段未成功验证 客户端应该收到 400 Bad Request 并在正文中收到类似 验证
  • WPFToolkit DataGrid:组合框列不会立即更新选定值绑定

    我正在使用 WPF 工具包 DataGrid 和 DataGridComboBoxColumn 一切正常 除了当组合框上发生选择更改时 选定的值绑定源不会立即更新 仅当组合框失去焦点时才会发生这种情况 有没有人遇到过这个问题并有任何建议的解
  • 无法使用 Element.getAttribute() 获取元素值

    我想读取 xml 文件 我找到了一个很好的示例 直到 xml 元素没有任何属性 当然 我尝试过如何读取属性 但它不起作用 例如 XML
  • MS Dynamics CRM Online 2011 - 身份验证问题

    我是 Dynamics crm online 2011 的新手 虽然我一直在研究 SDK 示例代码 但我试图找到最简单的方法来执行与我们的在线 Dynamics CRM 服务的基本身份验证连接 并推送一些非常基本数据到我创建的自定义实体 扩
  • 圆圈未显示在 JPanel 中

    所以我试图在里面画圆圈inner控制板 我有一堂课 paintTimeUnit给定 xy 坐标对 在面板内创建圆圈 但每当我创建一个新的paintTimeUnit对象并将其添加到面板中 它似乎没有显示 public class paintT
  • ember.js 还支持 ObjectController 吗?如果不是,用什么来替代它?

    我正在尝试学习一些 Ember js 虽然我意识到一切都在变化 但似乎 Sproutcore 2 指南中的这段代码 链接到 Ember js github 自述文件 并没有继续工作 App userController SC ObjectC
  • 使用 Python 变量搜索 SQLite 数据库

    我有一个 SQLite 数据库 我想使用 Python 变量进行搜索 如下所示 cur execute SELECT FROM list WHERE InstitutionName Variable 理想情况下 这将允许我将每一行作为列表返
  • 列表框 Shift-Click 多选锚点设置不正确

    我无计可施地试图解决这个问题 我在 WPF 方面经验丰富 但从未见过这样的事情 我有一个包含可选 ListBoxItems 的列表框 可以通过单击鼠标或使用向上 向下箭头来选择列表中的项目 我正在使用 SelectionMode Exten
  • Spring 应用程序中非 Spring Bean 的加载时间编织

    我有一个带有一些 REST 控制器 服务类和帮助程序类的 Spring Boot 应用程序 控制器和服务类是 spring 管理的 而辅助类不是 spring 管理的 并且大多包含静态方法 AspectJ 配置存在于 java 配置中 如下
  • JDK 9 - 167 的编译错误

    我刚刚下载了jdk9 build 167 想继续查看新的模块系统 我已经在之前的版本中这样做了 不记得到底是哪一个 现在我安装了167并删除了旧的JDK 当我现在尝试编译时 出现错误 错误 文件应该位于源路径或模块的补丁路径上 如果我删除
  • 读取注册表值并转换为日期

    我正在尝试使用以下代码查找 Windows 机器的正常运行时间 上次关机时间 computernames gc LegAservers txt foreach computername in computernames baseKey Mi
  • Flyway - 管理多个模式不起作用

    我正在尝试对具有相同生命周期的许多不同 Postgresql 模式进行迁移 根据飞行路线文档 这种情况应该可行 我的 ANT 脚本中有以下内容 当我运行迁移时 更改仅应用于第一个 默认 架构 我做错了什么 还是 Flyway schemas
  • f 字符串格式化程序,包括 for 循环或 if 条件

    我怎样才能插入for循环或if里面的表达式f string 我最初想做这样的事情if表达式 f a s if CONDITION else 但我想做的是 实施例1 f key value n for key value in dict it
  • 作为两个双精度数之和的双精度浮点数

    下列的双精度算术的论文和源代码一段时间以来 我仍然无法弄清楚 dd real 定义为struct dd real double x 2 数字被分成两个双精度数 假设我用字符串初始化它 dd real pi 3 141592653589793