当用有限精度表示数字时,并不是可用范围内的每个数字都能被精确表示。对定点数字的任何操作的结果通常存储在比该数字的原始格式更长的寄存器中。当结果被放回原始格式时,将使用舍入方法将值转换为一个可表示的数字。在舍入运算中往往会损失精度,产生量化误差和计算噪声。
舍入操作的代价和引入的偏差量取决于舍入方法本身。
当用有限精度表示数字时,并不是可用范围内的每个数字都能被精确表示。如果一个数字不能用指定的数据类型和比例精确地表示,则使用舍入方法将该值转换为一个可表示的数字。虽然舍入运算总是会损失精度,但运算的代价和引入的偏差量取决于舍入方法本身。
每个舍入方法都有一组固有属性。根据您的设计需求,这些属性可能使舍入方法对您来说更可取或更不可取。通过了解设计的需求和了解每种舍入方法的属性,您可以确定哪种方法最适合您的需求。需要考虑的最重要的属性是:
成本——与所使用的硬件无关,舍入法需要多少处理费用?
低-该方法需要很少的处理周期。
中等-该方法需要中等数量的处理周期。
高-该方法需要更多的处理周期。
请注意
这里提供的成本估算与硬件无关。有些处理器内置四舍五入模式,所以在计算每个四舍五入模式的实际成本之前,要仔细考虑使用的硬件。
偏差-舍入值减去原始值的期望值是多少: ?
-舍入法引入了负偏差。
-舍入法是无偏的。
舍入法引入了正偏倚。
为了在成本和偏差之间的权衡中为您提供更大的灵活性,Fixed-Point Designer™产品目前支持以下舍入方法:金宝app
定点设计师舍入模式 | 描述 | 联系处理 | 成本 | 偏见 |
---|---|---|---|---|
天花板 | 四舍五入到正无穷方向上最接近的可表示数。 | N/A | 低 | 大的积极 |
收敛 | 四舍五入到最接近的可表示数。 | 领带四舍五入到最接近的偶数。 | 高 | 无偏见的 |
地板上 | 在负无穷方向上舍入到最接近的可表示数。相当于二的补码截断。 | N/A | 低 | 大的负面 |
最近的 | 四舍五入到最接近的可表示数。 | 领带是四舍五入到最接近的代表数字在正无穷大的方向。 | 温和的 | 小正 |
轮 | 四舍五入到最接近的可表示数。 |
|
高 |
|
简单的 (金宝app仿真软件®唯一的) |
之间自动选择地板上 和零 生成尽可能高效的代码。 |
N/A | 低 | 取决于操作 |
零 | 在0方向上舍入到最接近的可表示数。 | N/A | 低 |
|
朝天花板和地板四舍五入有时对诊断有用。例如,在一系列算术运算之后,由于单词大小的限制,您可能无法知道确切的答案,这就引入了舍入。如果级数中的每个操作都执行两次,一次四舍五入到正无穷,一次四舍五入到负无穷,就可以得到正确答案的上限和下限。然后,您可以决定结果是否足够准确,或者是否需要进行额外的分析。