gpt4 book ai didi

precision - Ada 数字困惑

转载 作者:行者123 更新时间:2023-12-03 06:52:01 28 4
gpt4 key购买 nike

我一直在阅读一些内容,但我很难理解如何解释“数字 x”。即:

type something is digits 6

我知道它的精度是 6 位数字,但我想让我困惑的是这是什么意思。

1) Y.XXXXXX (6X's),

2) XXX.XXX(任意位数,尾数前后均为 6)

...

我只是想了解数字 6(或者更通用的数字 n)的范围,是否有一个公式可以简单地插入来确定我的范围在某种类型上位数?

最佳答案

digits声明的类型是浮点类型,类似于FloatLong_Float

6 是“最小有效十进制数”浮点类型”。例如,以下所有内容都将相当准确地表示(但不是完全):

type My_Real is digits 6;
X: My_Real := 1.23456;
Y: My_Real := 12345.6;
Z: My_Real := 1.23456E7;

实际上,给定系统上通常只有 2 或 3 个底层浮点类型。编译器将选择一个合适的类型作为声明的基础类型。实际上,使用 digits 2digits 6 声明的两种类型可能具有完全相同的表示形式和精度。

理解“不完全”这个短语需要对浮点的理解,这远远超出了单个问题的范围,但如果您熟悉其他语言中的浮点,那么它就是相同的总体想法。

如果您想大致了解浮点是什么及其工作原理,Wikipedia Article 还不错。更先进的处理方法是 David Goldberg 的经典论文“What Every Computer Scientist Should Know About Floating-Point Arithmetic”,可提供 here 网页版和 here PDF 版。

关于precision - Ada 数字困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10132229/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com