ARMv6 加入了幾個好用的 Swap 指令. 不需要用軟體算來算去
請參考 http://www.arm.com/pdfs/ARMv6_Architecture.pdf
REV
REV16
REVSH
最常用的應該是 REV 吧.
Realview inline assembly 很簡單.
[C]unsigned int tmp = 0x12345678;
__asm{
REV tmp, tmp
}[/C]
GNU C++ inline assembly 為(未測)
[C]
unsigned int tmp = 0x12345678;
__asm__ __volatile__ (
“REV %0,%0;” : “=r”(tmp) : “r”(tmp):”r5”);
);[/C]
發佈留言