XCHG AH, AL ROL EAX XCHG AH, AL |
또 다른 방법
BSWAP EAX |
또 다른 방법
ROL AX, 8 ROL EAX, 16 ROL AX, 8 |
/* Code by JaeHyuk Cho Swap4 */ #include <stdio.h> int main(int s_Argc, char *s_Argv[]); static unsigned long __Swap4__(unsigned long s_DWORD) { __asm__ volatile( "\n\t" "xchgb %%ah, %%al\n\t" "roll $16, %%eax\n\t" "xchgb %%ah, %%al\n\t" "\n\t" : "=a"(s_DWORD) : "a"(s_DWORD) ); return(s_DWORD); } int main(int s_Argc, char *s_Argv[]) { unsigned long s_DWORD = 0x12345678; fprintf(stdout, "Original = %08lXH\n", s_DWORD); s_DWORD = __Swap4__(s_DWORD); fprintf(stdout, "After swap = %08lXH\n", s_DWORD); return 0; } /* End of source */ |



글
댓글을 달아 주세요
댓글 RSS 주소 : http://blog.minzkn.com/rss/comment/24댓글 ATOM 주소 : http://blog.minzkn.com/atom/comment/24