附录 F PowerPC® 指示信息

表 1. PowerPC® 指示信息
助记符 指令 格式 主操作码 扩展操作码
添加 [o] [.] 添加 XO 31 266
addc [o] [.] 添加运载 XO 31 10
adde [o] [.] 添加扩展 XO 31 138
阿迪 立即添加 D 14  
阿迪克 添加立即运输 D 12  
阿迪克 添加即时携带和记录 D 13  
阿迪斯 添加立即转移 D 15 日  
addme [o] [.] 添加到 Minus One 扩展 XO 31 234
addze [o] [.] 添加到零扩展 XO 31 202
和 [.] X 31 28
和 c [.] 具有完成的 AND X 31 60
安迪 与立即 D 28  
andis. AND 立即转移 D 29  
b [l] [a] 分支 I 18  
bc [l] [a] 分支条件 B 16  
bcctr [l] 分支条件到计数寄存器 XL 19 528
bclr [l] 分支条件链接寄存器 XL 19 16
CMP 比较 X 31 0
坎皮 立即比较 D 11  
坎普尔 比较逻辑 X 31 32
奇普利 立即比较逻辑 D 10  
克恩特尔兹德 对前导零双字计数 X 31 58
cntlzw [.] 前导零字计数 X 31 26
克兰 条件寄存器 AND XL 19 257
克兰德克 条件寄存器并具有完成 XL 19 129
克里克夫 条件寄存器等效项 XL 19 289
克南德 条件寄存器 NAND XL 19 225
克诺尔 条件寄存器 NOR XL 19 33
错误 条件寄存器或 XL 19 449
克罗尔茨 条件寄存器 OR 与完成 XL 19 417
克热尔 条件寄存器 XOR XL 19 193
DCBF Data Cache 块清空 X 31 86
Dcbi Data Cache 阻止失效 X 31 470
DCBST Data Cache 块存储 X 31 54
布特 Data Cache 块触摸 X 31 278
德克布斯特 针对商店的 Data Cache Block Touch X 31 246
Dcbz Data Cache 块设置为零 X 31 1014
迪夫德 划分双字 XO 31 489
迪夫杜 分割 Doubleword 无符号 XO 31 457
divw [o] [.] 除字 XO 31 491
divwu [o] [.] 分割未签名的单词 XO 31 459 个
埃西夫克斯 Word 中的外部控制已建立索引 (opt.) X 31 310
埃科克斯 外部控制输出已建立索引的字 (opt.) X 31 438
EIEIO 按顺序实施 I/O 执行 X 31 854
eqv [.] 相等 X 31 284
出口 b [.] 扩展符号字节 X 31 954
extsh [.] 扩展符号半字 XO 31 922
埃克斯夫 扩展符号字 X 31 986
工厂 [.] 浮动绝对值 X 63 264
fadd [.] 浮动添加 A 63 21
fadds [.] 浮动添加单个 A 59 21
菲德 从整数双字进行浮动转换 X 63 846
Fcmpo 已排序的浮动比较 X 63 32
Fcmpu 浮动比较无序 XL 63 0
预测 浮动转换为整数双字 X 63 814
国际 浮动转换为整数双字 (舍入为零) X 63 815
fctiw [.] 浮动转换为整数字 X 63 14
fctiwz [.] 浮动转换为整数字 (舍入为零) XL 63 15 日
fdiv [.] 浮动除法 A 63 18
fdivs [.] 浮动除法单 A 59 18
fmadd [.] 浮动乘法-添加 A 63 29
fmadds [.] 浮动乘-添加单个 A 59 29
Fmr [.] 浮动移动寄存器 X 63 72
fmsub [.] 浮动乘法-减去 A 63 28
fmsubs [.] 浮动乘法-减去单个 A 59 28
Fmul [.] 浮动乘 A 63 25
fmuls [.] 浮动乘单值 A 59 25
fnabs [.] 浮动负绝对值 X 63 136
fneg [.] 浮动 Negate X 63 40
fnmadd [.] 浮动负乘-加 A 63 31
fnmadds [.] 浮动负乘-添加单个 A 59 31
fnsub [.] 浮动负乘-减 A 63 30
fnmsubs [.] 浮动负乘法-减去单个 A 59 30
Fres [.] 浮动倒数估算单 (可选) A 59 24
弗尔普 [.] 浮动舍入到单精度 X 63 12
frsqrte [.] 浮动倒数平方根估算值 (可选) A 63 26
fsel [.] "浮点选择" (可选) A 63 23
fsub [.] 浮动减法 A 63 20
fsubs [.] 浮动减法单 A 59 20
伊奇比 指令高速缓存块失效 X 31 982
ISYNC 指令同步 X 19 150
勒布兹 装入字节和零 D 34  
勒布祖 通过更新装入 Byte 和 Zero D 35  
勒布祖 已建立更新索引的装入字节和零 X 31 119
勒布兹 已建立装入字节和零索引 X 31 87
ld 装入双字 DS 58 0
达尔克斯 装入 Doubleword 和预留索引 X 31 84
使用更新装入双字 DS 58 1
勒杜 使用 "已建立索引的更新" 装入双字 X 31 53
世界 装入已建立索引的双字 X 31 21
自由 装入浮点双精度型 D 50  
勒夫杜 使用更新装入浮点双精度型 D 51  
勒夫杜 装入具有更新索引的浮点双精度数 X 31 631
勒夫德 已建立浮点双索引的负载 X 31 599
LFS 装入浮点单值 D 48  
勒夫苏 使用更新装入浮点单值 D 49  
勒夫苏 装入已建立更新索引的浮点单 X 31 567
勒夫斯 装入浮点单个已建立索引 X 31 535
莱哈 装入半代数 D 42  
勒豪 装入具有更新的半代数 D 43  
勒霍 已建立更新索引的装入半代数 X 31 375
拉克斯 装入半代数已建立索引 X 31 343
勒布尔克斯 装入半字节-反向索引 X 31 790
利兹 装入半值和零值 D 40  
利祖 更新时装入 "半值" 和 "零值" D 41  
勒祖 具有更新索引的 "半装入" 和 "零装入" X 31 331
勒兹 负载一半和零索引 X 31 279
勒姆 装入多个单词 D 46  
勒斯威 立即装入字符串字 X 31 597
勒斯克斯 已建立索引的装入字符串字 X 31 533
卢瓦 加载字代数 DS 58 2
卢瓦克斯 已建立索引的装入字和保留 X 31 20
卢沃 具有更新索引的装入字代数 X 31 373
已建立索引的装入字代数 X 31 341
卢布尔克斯 装入字字节-反向索引 X 31 534
卢兹 装入字和零 D 32  
卢祖 装入具有零更新的单词 D 33  
卢祖 使用更新索引装入 Word 和零 X 31 55
卢兹 装入 Word 并建立零索引 X 31 23
姆茨尔夫 搬迁条件寄存器字段 XL 19 0
姆茨尔夫斯 从 FPSCR 移至条件寄存器 X 63 64
姆茨尔 从 XER 移至条件寄存器 X 31 512
mfcr 从条件寄存器中移动 X 31 19
Mffs [.] 从 FPSCR 移动 X 63 583
姆夫姆斯尔 从机器状态寄存器移动 X 31 83
姆夫斯布尔 从特殊用途寄存器中移动 X 31 339
姆弗斯尔 从段寄存器移动 X 31 595
姆夫斯伦 从分段寄存器间接移动 X 31 659
姆茨拉夫 移至条件注册字段 XFX 31 144
mtfsb0[.] 移动到 FPSCR 位 0 X 63 70
mtfsb1[.] 移至 FPSCR 位 1 X 63 38
mtfsf [.] 移动到 FPSCR 字段 XFL 63 711
mtfsfi [.] 立即移至 FPSCR 字段 X 63 134
姆特姆斯尔 移至机器状态寄存器 X 31 146
姆茨布尔 移动到特殊用途寄存器 X 31 467
姆茨尔 移至段寄存器 X 31 210
姆茨林 间接移至段寄存器 X 31 242
穆赫德 乘高双字 XO 31 73
穆赫杜 乘高双字无符号 XO 31 9
Muhw [.] 乘法高字 XO 31 75
毛尔武 [.] 乘高字无符号 XO 31 11
穆尔德 乘低双字 XO 31 233
穆利 立即乘低 D 07  
mullw [o] [.] 乘低字 XO 31 235
南 [.] NAND X 31 476
neg [o] [.] 求反 XO 31 104
或 [.] NOR X 31 124
或 [.] X 31 444
Orc [.] OR 与 Complement X 31 412
奥里 或立即 D 24  
奥里斯 或立即转移 D 25  
雷菲 从中断返回 X 19 50
雷尔德茨勒 旋转左双字,然后清除左 MDS 30 8
雷尔德河 旋转左双字,然后向右清除 MDS 30 9
拉尔迪奇 立即旋转左双字,然后清除 MD 30 2
雷尔迪克尔 立即旋转左双字,然后清除左 MD 30 0
勒迪克尔 立即旋转左双字,然后向右清除 MD 30 1
拉尔迪米 立即旋转左双字,然后插入掩码 MD 30 3
Rlwimi [.] 立即旋转左字,然后插入掩码 M 20  
rlwinm [.] 立即旋转左字,然后使用掩码旋转 AND M 21  
rlwnm [.] 旋转左字,然后使用掩码 AND M 23  
sc 系统调用 SC 17  
si 立即减去 D 12  
西 减去 "立即" 和 "记录" D 13  
斯比亚 SLB 全部失效 X 31 498
斯比 SLB 失效条目 X 31 434
斯尔德 左移双字 X 31 27
slw [.] 左移单词 X 31 24
SRAD 右移代数双词 X 31 794
斯拉迪 右移代数双字立即计数 XS 31 413
斯德 右移双字 X 31 539
Sraw [.] 右移代数词 X 31 792
斯拉维 [.] 右移代数字立即 (Shift Right Algebraic word immedi X 31 824
srw [.] 右移单词 X 31 536
斯特卜 存储字节 D 38  
斯特布 具有更新的存储字节 D 39  
斯特布克斯 已建立更新索引的存储字节数 X 31 247
斯特布 已建立索引的存储字节数 X 31 215
std 存储双字 DS 62 0
Stdcx 存储双字条件已建立索引 X 31 214
斯特杜 通过更新存储 Doubleword DS 62 1
斯特杜克斯 使用 "已建立索引的更新" 存储双字 X 31 181
斯特德克斯 已建立索引的存储双字 X 31 149
斯特夫德 存储浮点双精度型 D 54  
斯特夫杜 通过更新存储浮点双精度型 D 55  
斯特夫杜克斯 存储具有更新索引的浮点双精度数 X 31 759
斯特夫德克斯 存储浮点双精度型索引 X 31 727
斯特菲夫克斯 将浮点存储为整数字 "已建立索引" (可选) X 31 983
斯特夫斯 存储浮点单值 D 52  
斯特苏 具有更新的存储浮点单值 D 53  
斯特夫苏 存储已建立更新索引的浮点单 X 31 695
斯特斯克斯 商店浮点单个索引 X 31 663
施特赫 存储半 D 44  
斯特布克斯 存储半字节-反向索引 X 31 918
斯图 具有更新的半存储器 D 45  
斯图 已建立更新索引的一半商店 X 31 439
斯特克斯 已建立一半索引的商店 X 31 407
施特姆夫 存储多个单词 D 47  
斯特斯威 立即存储字符串字 X 31 725
斯特斯克斯 已建立索引的存储字符串字 X 31 661
标准 存储 D 36  
施特夫尔克斯 存储字字节-反向索引 X 31 662
斯特夫克克斯 存储词条件索引 X 31 150
斯特武 包含更新的存储字 D 37  
斯特武 具有更新索引的存储字 X 31 183
施特夫克斯 已建立索引的存储字 X 31 151
subf [o] [.] 从以下项中减去 XO 31 40
subfc [o] [.] 从采石中减去 XO 31 08
subfe [o] [.] 从扩展中减去 XO 31 136
亚菲奇 从立即运送中减去 D 08  
subfme [o] [.] 从 Minus One Extended 中减去 XO 31 232
subfze [o] [.] 从零扩展中减去 XO 31 200
sync 同步 X 31 598
TD 陷阱双字 X 31 68
tdi 陷阱双字立即 D 2  
特尔比 转换后备缓冲区使条目失效 (可选) X 31 306
Tlbsync 转换 "后备缓冲区同步" (可选) X 31 566
tw 陷阱词 X 31 04
特维 陷阱字 (立即) D 03  
xor [.] 异或 X 31 316
克索里 XOR 立即 D 26  
索里斯 XOR 立即轮班 D 27