ld (装入 Doubleword) 指令

用途

将双字数据装入到指定的通用寄存器中。

注: 此指令仅应在运行 64 位应用程序的 64 位 PowerPC® 处理器上使用。

语法

位数 VALUE
0 - 5 58
6 - 10 RT
11 - 15 亚美尼亚共和国
16 - 29 DS
30 - 31 0b00
PowerPC 64
ld RT Disp(RA)

描述

ld 指令将存储器中的双字从由有效地址 (EA) 寻址的内存中的指定位置装入到目标通用寄存器 (GPR) RT中。

DS 是一个 14 位,有符号的两个补码数,符号扩展至 64 位,然后乘以 4 以提供位移 Disp。 如果 GPR RA 不是 0 ,那么 EA 是 GPR RADisp的内容总和。 如果 GPR RA 为 0 ,那么 EA 为 Disp

参数

描述
RT 指定存储操作结果的目标通用寄存器。
显示 指定 16 位带符号数字,该数字是 4 的倍数。 在生成指令时,汇编程序将此数字除以 4。
RA 指定用于 EA 计算的源通用寄存器。

示例

以下代码将双字从内存装入到 GPR 4 中:


.extern  mydata[RW]
.csect   foodata[RW]
.local   foodata[RW]
storage: .llong mydata  # address of mydata

.csect   text[PR]
                        # Assume GPR 5 contains address of csect foodata[RW].
ld       4,storage(5)   # GPR 4 now contains the address of mydata.

实现

仅为 64 位实现定义此指令。 在 32 位实现上使用它将导致调用系统非法指令错误处理程序。