PowerPC和clrlslwi -or-rlwinm指令

时间:2016-04-15 21:48:54

标签: assembly powerpc

我已经在这里阅读了其他帖子,但仍然有关于PPC和rlwinm的问题。

我正在看的例子是:

li  r0, 0x100
clrlslwi  r9, r0, 27,5 (which afaik is the same as rlwinm r9, r0,5,22,26)

首先我加载r0 = 0x100 然后左移r0乘以5,因此r0 = 0x2000(无溢出,因此不需要旋转)

使用22到26位设置掩码= 0x3e0

AND r0,掩码= 0x2000 AND 0x3E0 = 0

我必须做错事......这总是会净0 我错过了什么?

1 个答案:

答案 0 :(得分:0)

是的(立即清除左移单词和左移单词)

clrlslwi rA,rS,b,n (n ≤ b ≤ 31) = rlwinm rA,rS,n,b – n,31 – n

所以 clrlslwi r9, r0, 27,5 = rlwinm r9, r0, 5, 22(27-5), 26(31-5)