#include <stdio.h>

unsigned int swabnibbles ( unsigned int temp )
{
    unsigned int result = 0;
    result = result |  ( ( temp & 0x000000F0ul ) >> 4 | ( temp & 0x0000000Ful ) << 4 ) |  \
                       ( ( temp & 0x0000F000ul ) >> 4 | ( temp & 0x00000F00ul ) << 4 ) |  \
                       ( ( temp & 0x00F00000ul ) >> 4 | ( temp & 0x000F0000ul ) << 4 ) |  \
                       ( ( temp & 0xF0000000ul ) >> 4 | ( temp & 0x0F000000ul ) << 4 );
    return result;
}

int main(void) {
	// your code goes here
	unsigned int temp = 0x12121212;
	unsigned int res = swabnibbles(temp);
	printf("original number %04x \n", temp );
	printf("original number %04x \n", res);
	
	return 0;
}
