UFL - underflow 下溢
两个有关联的事件产生下溢:
- 极小值(tininess) - 微小的非零结果在幅值上小于这个格式的最小规格化数。
- 准确性损失 - 反规格化导致的准确性损失可能大于单独舍入导致的准确性损失。
INX - inexact 不精确
如果操作的舍入的结果是不精确的(不同于可用无穷精度计算的值),或者在禁用 OFL 陷阱时发生上溢,或者在禁用 UFL 陷阱时发生了下溢,则设置 INX 标志。OFL 或 UFL 陷阱优先于 INX。在计算 SIN 或 COS 的时候也设置 INX 标志,但 SIN(0) 和 COS(1) 例外。老的 FPE 和 FPPC 系统在处理 INX 标志上可能不同。由于这个不一致性,我建议你不要启用 INX 陷阱。
精度:
S -单精度D -双精度E -双扩展精度P -压缩(packed)十进制数EP -扩展压缩十进制数
舍入模式:
-最近(不需要字符)P -正无穷M -负无穷Z -零
LDF{条件}<精度> <fp 寄存器>, <地址>
装载浮点值。
地址可以是下列形式:
- [Rn]
- [Rn], #offset
- [Rn, #offset]
- [Rn, #offset]!
你的汇编器可能允许使用如下文字:LDFS F0, [浮点值]
STF{条件}<精度> <fp 寄存器>, <地址>
存储浮点值。
地址可以是下列形式:
- [Rn]
- [Rn], #offset
- [Rn, #offset]
- [Rn, #offset]!
你的汇编器可能允许使用如下文字:STFED F0, [浮点值]
LFM and SFM
它们类似于 LDM 和 STM,但因为一些版本的 FPEmulator 不支持它们就不进行描述了。最新版本的 RISC OS 3.1x (2.87) 中的 FP 模块支持。如果你想让你的软件只在支持 SFM 的系统上操作就使用它吧。否则你需要用 STF 的一个序列来‘伪造’它。LFM/LDF 也是类似。
FLT{条件}<精度>{舍入} <fp 寄存器>, <寄存器>
FLT{条件}<精度>{舍入} <fp 寄存器>, #<值>
转换整数成浮点数,要么从一个 ARM 寄存器要么从一个绝对值。
FIX{条件}{舍入} <寄存器>, <fp 寄存器>
转换浮点数成整数。
WFS{条件} <寄存器>
用指定 ARM 寄存器的内容写浮点状态寄存器。
RFS{条件} <寄存器>
读浮点状态寄存器到指定的 ARM 寄存器中。
WFC{条件} <寄存器>
用指定 ARM 寄存器的内容写浮点控制寄存器。
专属超级用户模式,并只存在于支持它的硬件上。
RFC{条件} <寄存器>
读浮点控制寄存器到指定的 ARM 寄存器中。
专属超级用户模式,并只存在于支持它的硬件上。
浮点协处理器数据操作指令的格式是:
双目操作{条件}<精度>{舍入} <目的浮点寄存器>, <源浮点寄存器>, <源浮点寄存器>
双目操作{条件}<精度>{舍入} <目的浮点寄存器>, <源浮点寄存器>, #<值>
单目操作{条件}<精度>{舍入} <目的浮点寄存器>, <源浮点寄存器>
单目操作{条件}<精度>{舍入} <目的浮点寄存器>, #<值>
<值>常量应当是 0、1、2、3、4、5、10、或 0.5。
双目操作有...ADF - 加法DVF - 除法FDV - 快速除法 - 只定义用单精度工作FML - 快速乘法 - 只定义用单精度工作FRD - 快速反向除法 - 只定义用单精度工作MUF - 乘法POL - 极化角POW - 幂RDF - 反向除法RMF - 余数RPW - 反向幂RSF - 反向减法SUF - 减法
单目操作有...ABS - 绝对值ACS - 反余弦ASN - 反正弦ATN - 反正切COS - 余弦EXP -
1.部分资源来自网络,经ET电子归类整理,旨在服务电子爱好者并无商业目的,不保证正确性与完整性.
2.如果您觉得本站资源对您有用,请告知您的好友,用搜索引擎搜"ET电子"即可.

