Oracle® Solaris Studio 12.4:数值计算指南

退出打印视图

更新时间: 2015 年 1 月
 
 

词汇表

A-E
abrupt underflow(突然下溢)

浮点运算下溢时始终返回零,即使结果处于次正规数的范围内。

accuracy(精确度)

一个数字与另一个数字的近似程度的衡量标准。例如,计算结果的精确度通常反映了导致该结果与数学精确结果之差的计算误差程度。精确度可以使用有效位数(例如,“结果精确到六位”)来表示,或者更常使用保留的相关数学属性(例如,“结果具有正确的代数符号”)来表示。

biased exponent(偏置指数)

底数为 2 的指数和一个常量(偏置)之和,选择该常量的目的是为了使存储的指数范围为非负值。例如 2-100 的指数,以 IEEE 单精度格式存储为 (-100) +(单精度偏置 127)= 27。

binade

任意两个连续二次幂之间的间隔。

chaining(链接)

一些管道体系结构的硬件功能,允许将一个运算的结果立即用作第二个运算的操作数,并同时将结果写入其目标寄存器。两个链接运算的总周期时间小于指令的独立周期时间之和。例如,TI 8847 支持连续的 faddfsubfmul(相同精度)链接。链接的 faddd/fmuld 需要 12 个周期,而连续的未链接 faddd/fmuld 需要 17 个周期。

common exceptions(常见异常)

对于 ieee_flags(3m) 和 ieee_handler(3m) 来说,溢出、无效以及被零除这三种浮点异常统称为常见异常。由于这些异常通常作为错误捕获,因此称为常见异常。

context switch(上下文切换)

在多任务操作系统(例如 SunOS 操作系统)中,进程按照固定的时间量程运行。在时间量程结束时,CPU 接收计时器的信号,中断当前正在运行的进程,然后准备运行新进程。CPU 保存旧进程的寄存器,然后为新进程加载寄存器。从旧进程状态切换到新进程的过程称为上下文切换。切换上下文花费的时间属于系统开销;所需的时间取决于寄存器的数量,以及是否有特殊指令用于保存与进程关联的寄存器。

default result(缺省结果)

在没有为异常指定任何其他处理的情况下,提供作为导致此异常的浮点运算结果的值。

denormalized number(非规范化数字)

次正规数以前的命名规则。

double precision(双精度)

使用两个字来表示数字,以确保精度或增加精度。在 SPARC® 工作站上,双精度是 64 位 IEEE 双精度。

exception(异常)

在尝试运行的原子算术运算没有产生可普遍接受的结果时,将引发算术异常。原子和可接受的含义随时间和使用场合而异。

exponent(指数)

浮点数的一部分,指示在确定所表示数字的值时基数的整数次幂。

F-I
floating-point number system(浮点数系统)

表示实数子集的系统,其中可表示数字之间的间隔不是固定的绝对常量。此类系统的特征包括基数、符号、有效位和指数(通常偏置)。数字的值是其有效位与基数的幂(未偏置指数)的有符号乘积。

gradual underflow(渐进下溢)

当浮点运算下溢到次正规数范围中时,将返回次正规数而不是 0。这种处理下溢的方法能够尽可能减少在对小数字进行浮点计算时的精确度损失。

hidden bit(隐藏位)

硬件使用的额外位,用于确保正确的舍入,软件无法访问。例如,IEEE 双精度运算使用三个隐藏位来计算 56 位结果,这些结果随后会舍入到 53 位。

IEEE Standard 754(IEEE 标准 754)

二进制浮点算术的标准,由美国电气及电子工程师学会 (Institute of Electrical and Electronics Engineers, IEEE) 开发,1985 年出版,2008 年修订。

in-line template(内联模板)

汇编语言代码片段,在内联传递 Sun Studio 编译器时,替换它所定义的函数调用。(例如)由数学库在内联模板文件 (libm.il) 中使用,以便从 C 程序访问三角函数的硬件实现和其他初等函数。

L-P
NaN

表示非数。使用浮点格式编码的符号实体。

normal number(正规数)

IEEE 运算中一个具有偏置指数的数字,不是零,也不是最大值(全为 1),表示实数常规范围的子集,具有相对较小的限定误差。

pipelining(流水线作业)

一个将运算约简为多个阶段的硬件功能,每个阶段(通常)用一个周期来完成。如果每个周期中可以发布新操作,将填充管道。如果管道中的指令之间没有相关性,则每个周期可以提供新结果。链接表示相关指令的流水线作业。如果相关指令无法链接,则在硬件不支持链接这些特定指令时,管道会停止。

precision(精度)

可表示数字的密度的定量测量方法。例如,在精度为 53 个有效位的二进制浮点格式中,任意两个相邻的 2 的幂之间有 253 个可表示数字(在正规数的范围内)。请不要混淆精度与精确度,后者表示的是一个数字与另一个数字的近似程度。

Q-R
quiet NaN(静态 NaN)

通过几乎每个算术运算传播的 NaN(not a number,非数),不引发新异常。

radix(基数)

任何数字系统的基数。例如,在记数系统中,2 是二进制系统的基数,10 是十进制系统的基数。SPARC 工作站使用基数 2 运算;IEEE 标准 754 是基数 2 运算标准。

round(舍入)

不精确的结果必须向上或向下舍入以获得可表示的值。向上舍入结果时,会将它增大到后一个可表示值。向下舍入结果时,会将它减小到前一个可表示值。

roundoff error(舍入误差)

将实数舍入到计算机可表示的数字时带来的误差。大部分浮点计算都会产生舍入误差。对于任何浮点操作,IEEE 标准 754 指定结果不应导致多个舍入误差。

S-T
signaling NaN(信号 NaN)

只要作为操作数出现就会引发无效运算异常的 NaN(not a number,非数)。

significand(有效位)

浮点数的一部分,与基数的有符号次幂相乘来确定数字的值。在规范化数字中,有效位包括一个位于基数点左侧的非零位,和一个位于右侧的小数部分。

single precision(单精度)

使用一个计算机字来表示一个数字。

stderr

标准误差是指向标准误差输出的 Unix 文件指针。在启动程序时打开此文件。

store 0(存储零)

与突然下溢相同。请参见 abrupt underflow(突然下溢)

subnormal number(次正规数)

在 IEEE 运算中,偏置指数为零的非零浮点数。次正规数是介于零和最小正规数之间的数字。

two's complement(二进制补码)

二进制数字的基数补码,通过将每一位减去一,然后在最低有效位上加一并执行任何所需的进位后形成。例如,1101 的二进制补码为 0011。

U-Z
ulp

表示最后位置的单元。在二进制格式中,有效位的最低有效位,即位 0 是最后位置单元。

ulp(x)

表示以工作模式截断的 x 的 ulp

underflow(下溢)

表示一种情形,此时浮点算术运算的结果太小,使其在只使用正规舍入的方法时,无法以目标浮点格式中的正规数形式表示。

word(字)

一组有序的字符,在指定计算机中作为单个实体存储、寻址、传输和操作。在 SPARC 工作站中上下文中,一个字为 32 位。

wrapped number(封装数字)

在 IEEE 运算中,从一个值创建的数字,通过向其指数添加固定偏置使该封装值处于正规数范围内,否则会溢出或下溢。当前不在 SPARC 工作站上生成封装结果。