fctidz (Floating Convert to Integer Double Word with Round to Zero) 指令

用途

使用舍入为零的舍入方式将浮点寄存器的内容转换为 64 位带符号的定点整数。 将结果放入另一浮点寄存器中。

语法

位数 VALUE
0-5 63
6-10 D
11-15 00000
16-20 B
21-30 815
31 rc
PowerPC® 
国际 FRT, FRB (Rc=0)
Fctidz. FRT, FRB (Rc=1)

描述

浮点寄存器 (FRP) FRB 中的浮点操作数将转换为 64 位带符号的定点整数,并使用舍入方式舍入为零,然后放入 FPR FRT中。

如果 FPR FRB 中的操作数大于 2 * *63-1 ,那么 FPR FRT 会设置为 0x7FFF_FFFF_FFFF_FFFF。 如果 frB 中的操作数小于 2 * *63 ,那么 FPR FRT 设置为 0x8000_0000_0000_0000。

除了已启用的无效操作异常,未定义 FPSCR [FPRF]。 如果结果在四舍五入时递增,那么将设置 FPSCR [FR]。 如果结果不准确,那么将设置 FPSCR [FI]。

国际 指令具有两种语法形式。 每个语法表单对条件寄存器字段 1 具有不同的影响。

描述
语法 表格 浮点状态 (Floating-Point Status) 和 控制寄存器 记录 位 (Rc) 条件 注册字段 1
国际 FPRF (未定义) , FR , FI , FX , XX , VXSNAN , VXCVI 0
Fctidz. FPRF (未定义) , FR , FI , FX , XX , VXSNAN , VXCVI 1 FX , FEX , VX , OX

参数

描述
FRT 指定该操作的目标浮点寄存器。
FRB 指定用于该操作的源浮点寄存器。

实现

此指令仅针对 64 位实现进行定义。 在 32 位实现上使用该命令将导致调用系统非法指令错误处理程序。