stfdux (Store Floating-Point Double with Update Indexer) 指令

用途

将数据的双字存储在内存中的指定位置,在某些情况下,将地址放在通用寄存器中。

语法

位数 VALUE
0 - 5 31
6 - 10 财务报告准则
11 - 15 亚美尼亚共和国
16 - 20 经常预算
21 - 30 759
31 /
描述
stfdux FRS RA RB

描述

stfdux 指令将浮点寄存器 (FPR) FRS 的内容存储到由有效地址 (EA) 寻址的双字存储器中。

如果通用寄存器 (GPR) RA 不是 0 ,那么 EA 是 GPRs RARB的内容总和。 如果 GPR RA 为 0 ,那么 EA 是 GPR RB的内容。

如果 GPR RA 不等于 0 ,并且存储器访问不会导致对齐中断或数据存储器中断,那么 EA 将存储在 GPR RA中。

stfdux 指令有一种语法形式,不影响浮点状态和控制寄存器或条件寄存器字段 0。

参数

描述
财务报告准则 指定存储数据的源浮点寄存器。
RA 指定用于 EA 计算和可能的地址更新的源通用寄存器。
经常预算 指定用于 EA 计算的源通用寄存器。

示例

以下代码将 FPR 6 的内容存储到内存中的某个位置,并将地址存储在 GPR 4 中:


.csect data[rw]
buffer: .long 0,0,0,0
# Assume FPR 6 contains 0x9000 3000 9000 3000.
# Assume GPR 4 contains 0x0000 0008.
# Assume GPR 5 contains the address of buffer.
.csect text[pr]
stfdux 6,4,5
# buffer+8 now contains 0x9000 3000 9000 3000.
# GPR 4 now contains the address of buffer+8.